自动化测试是指运行软件程序后,自动执行测试用例并在没有任何人为干预的情况下产生测试结果。 它比手动测试更优越的地方在于,很大程度上节省了人力和时间,并且在测试中没有或者少有错误。此外,还可以多次测试相同的应用程序,从而最大限度地减少冗余的手动工作。 本文旨在推荐一些在全球广泛使用的测试自动化工具,其中既有商业软件也有开源软件,不过即使是商业软件,大部分都可以免费试用。 1、 LambdaTest LambdaTest 是...
# 1、前言 22年底ChatGPT就已风靡行业内外,简单来说,它是基于自然语言生成式 AI 模型,打造的一款聊天机器人。是 OpenAI 于 11 月 30 日推出的最新作品,供公众免费测试。他可以根据用户的提示,模仿类似人类的对话,和普通的智能机器人有天地之别,非常真实。我们跟他说各种内容,比如写代码、汇总周报、写邮件、写诗句、查百科什么的,ChatGPT 都对答如流,根本不在话下。 圈内开始尝试利用chatGPT提升工作效率,比如VSCod...
# 1 前言 编写Java单元测试用例,即把一段复杂的代码拆解成一系列简单的单元测试用例,并且无需启动服务,在短时间内测试代码中的处理逻辑。写好Java单元测试用例,其实就是把“复杂问题简单化,建单问题深入化“。在编写的过程中, 我们也可以对自己的代码进行一个二次检查。 以下是我总结的一些编写单元测试的好处: 1.测试代码逻辑时,不需要启动整个应用。 2.单元测试可以覆盖边界值 3.提高原有代码的复用 4.可以有效避免代...
本文介绍了作者对CICD的理解以及在项目中开展CICD的几种场景,总结了每种场景实践的关键节点、带来的收益,以及结合具体项目开展的实际应用。读者可以借鉴本文中描述的场景,或借鉴文中提到的实践方式,在项目中开展CICD,为项目在持续集成部署上做具体的支撑。 1 前言 基于公司Bamboo、EOS,SonarQube平台,在项目中开展CICD持续集成与部署。介绍CICD开展的场景,项目中的实际应用,以及后续规划。 2 CICD基础概念 CICD 是持续...
## 背景 AREX 是一款开源的基于真实请求与数据的自动化回归测试平台,利用 Java Agent 技术与比对技术,通过流量录制回放能力实现快速有效的回归测试。 AREX Agent 项目(arex-agent-java) 现在已经支持了大部分开源组件的 Mock,但对某些公司内部完全自研或是基于开源组件做了修改的基础组件还暂不支持,回放时可能会产生预期外的差异,针对这种问题,可以使用插件的形式对 AREX Agent 进行扩展,其他需要扩展或增强的场景类似。...
# 一. 现状·问题 针对现如今高并发场景的业务系统,“并发问题” 终归是必不可少的一类(占比接近10%),每次出现问题和事故后,需要耗费大量人力成本排查分析并修复。那如果能在事前尽可能避免岂不是很香?  # 二. 分析原因 - 当前并发测试多数依赖测试人员进行脚本测试,同时还依...
一、背景 什么是精准测试?通常研发提测的需求有代码变更,针对研发的代码变更点以及关联点进行测试,我们称之为精准测试。 很多时候,对变更点、影响范围的评估并不是很准确,偶尔会出现影响范围评估不全或者影响范围评估过大的情况。对于影响范围不全,我们所执行的测试用例,就会出现覆盖不全的情况,导致部分功能漏测,进而产生线上问题。对于影响范围过大,我们所执行的用例会过多,占用大量时间来测试完全和本次提测无关的...
作为测试,经常会遇到倒排期的项目,当研发已经占用了很多资源的情况下,此时测试要想提高效率。就不得不在研发提测前多做准备,那么研发提测前测试到底能做些什么,我将根据我的经验,在本次文章中与大家一起分享。 # 需求分析 首先要做的就是要在熟读下 prd,这里面主要需要挖掘如下信息: - 本次 prd 的业务背景是什么? - 这个业务要实现的价值是怎样的? - 这个业务的受益方(或者叫使用者)是谁? - 本次业务都需要与哪些...
随着业务的增长,系统的高频率迭代,质量保障工作迫切需要引入更加科学高效的测试方法来助力业务高质量的交付。长城项目一期测试中,全渠道质量团队引入技术平台部R2技术,极大的提升了项目交付的质量。因此,本文将重点介绍全渠道质量团队是如何利用R2来保障业务质量的。 一、为什么引入R2? 全渠道长城项目是将全渠道现有交易能力下沉至交易中台,在技术系统层面实现了线上线下系统深度一体化,为零售的全渠道技术(人通、货通...
## 背景 AREX 是一款开源的基于真实请求与数据的自动化回归测试平台,利用 Java Agent 技术与比对技术,通过流量录制回放能力实现快速有效的回归测试。 Dubbo 是一款高性能的分布式服务框架,它基于 RPC 的服务调用和服务治理,具有透明化的远程调用、负载均衡、服务注册与发现、高度可扩展性、服务治理等特点。 目前 AREX 支持录制使用 Dubbo2x、Dubbo3x 协议的接口请求,并且在基于 Dubbo3x 版本开发的调度服务(Schedule Se...
一、写在前面 1、混沌是什么? 混沌工程(Chaos Engineering)的概念由 Netflix 在 2010 年提出,通过主动向系统中引入异常状态,并根据系统在各种压力下的行为表现确定优化策略,是保障系统稳定性的新型手段。 混沌工程是一门在分布式系统上进行实验的学科,目的是建立人们对于复杂系统在生产环境中抵御突发事件的信息。 2、为什么要做混沌? 混沌工程通过有意地引入故障、异常或不确定性的条件,以模拟真实世界中的不完美环境...
## 一、大数据双流建设 ### 1.1 数据双流 大数据时代,越来越多的业务依赖实时数据用于决策,比如促销调整,点击率预估、广告分佣等。为了保障业务的顺利开展,也为了保证整体大数据链路的高可用性,越来越多的0级系统建设双流,以保证日常及大促期间数据流的稳定性。**建设核心数据链路双机房,双流双活。同时双流建设需要整条链路上的所有环节双机房部署**,**占用了双倍的物理资源**;整个建设过程要协同上下游各环节(数据生...
> AREX 是一款开源的基于流量录制回放技术的自动化回归测试平台,目前官方文档仅介绍了如何在本地及私有云部署,本篇文章分享如何 AWS 环境下快速搭建 AREX 服务,并使用 AWS 的 DocumentDB 作为数据库替换官方默认的 MongoDB,使用 ElastiCache 替换默认的 Redis。 ## 安装 AREX 使用前需要注册 AWS 账号并对相应概念有一定了解,详细可参考[ AWS 官方文档](https://docs.aws.amazon.com/ec2/?icmpid=docs_homepage_featureds...
一、常态化压测介绍 1.什么是常态化压测 常态是指:“正常的状态”;“化”在这里是表示转变为某种性质或状态。 “常态化”的含义就是:趋向正常的状态。 那么常态化压测顾名思义就可以解释为,让压测趋于正常的状态,趋于合理;因此通过调研给了如下定义:常态化压测是指在某个产品或系统上进行自定义周期(常态化)的、系统自动执行的、可验证结果的压测过程。目的是检测产品或系统的稳定性、可靠性和性能,确保它们能够在不同...
1 背景 APP端UI自动化因其特殊性(需连接测试机)一般都在本地执行,这种执行方式的局限性有以下弊端: 时效性低:研发每次打包后都需要通知测试,测试再去打包平台取包,存在时间差 研发自测或产品验收无法使用自动化脚本:研发自测及产品验收时如果想用自动化脚本需要搭建相应的运行环境并准备测试机,繁琐的步骤导致研发/产品放弃使用自动化。而手工验证的过程中经常需要测试协助下单、改数据,效率低 本地执行的结果没有持久...
1 前言 Jmeter是Apache基金会下的一款应用场景非常广的压力测试工具,具备轻量、高扩展性、分布式等特性。Jmeter已支持实现随机数、计数器、时间戳、大小写转换、属性校验等多种函数,方便使用人员使用。如果在使用过程中存在和业务强耦合的常用功能函数,在Jmeter不支持的情况下,那就需要单独开发自定义函数实现特定功能。 本文介绍如何开发Jmeter自定义函数实现快速生成京东宙斯下单标准sign,同时深刻理解Jmeter的插件化机制...
1 什么是敏捷? 敏捷开发是一种思想或方法论,就是通过不断迭代开发和增量发布,最终交付符合用户价值的产品 敏捷思想源于最初的《敏捷宣言》: 【敏捷软件开发宣言】 个体和互动高于流程和工具; 工作的软件高于详尽的文档; 客户合作高于合同谈判; 响应变化高于遵循计划; 《敏捷宣言》代表敏捷的价值观,敏捷开发原则则帮助我们通过更灵活的方式思考开发方法和组织;具体十二条敏捷开发原则: 我们最重要的目标是通过持续不...
Python中什么是配置文件,配置文件如何使用,有哪些支持的配置文件等内容,话不多说,让我们一起看看吧~ 1 什么是配置文件? 配置文件是用于配置计算机程序的参数和初始化设置的文件,如果没有这些配置程序可能无法运行或是影响运行(运行速度、便捷性等),使用配置文件的好处在于,部分内容以及环境运行时只需要修改配置文件的参数内容,而无需去代码里查找并修改,提高便捷性、提高可维护性。 2 配置文件有哪几种? 配置主要...
一、单元测试 1.1 单元测试的必要性 测试驱动开发并不是一个很新鲜的概念了。在日常开发中,很多时候需要测试,但是这种输出是必须在点击一系列按钮之后才能在屏幕上显示出来的东西。测试的时候,往往是用模拟器一次一次的从头开始启动 app,然后定位到自己所在模块的程序,做一系列的点击操作,然后查看结果是否符合自己预期。 这种行为无疑是对时间的巨大浪费。于是有很多资深工程师们发现,我们是可以在代码中构造一个类似的...
AREX 是一款开源的基于真实请求与数据的自动化回归测试平台,利用 Java Agent 字节码注入技术,通过在生产环境录制和存储请求、应答数据,并在测试环境回放请求和注入 Mock 数据,存储新的应答,实现了自动录制、自动回放、自动比对,为接口回归测试提供便利。 AREX Mock 功能十分强大,不仅支持各种主流技术框架的自动数据采集和 Mock,还支持了本地时间、缓存数据以及各种内存数据的采集和 Mock,可以做到在回放时精准还原生产...
没有更多内容
加载失败,请刷新页面
作者 | GL 导读 提升检索漏斗一致性,要求在粗排阶段引入更丰富的信号,这些信号的需求量已经远远超出了内存的承受能力。为此,我们考虑引入基于NVMe SSD的分层存储。本文详细探讨了一种长尾...
一、系统分析与设计的逻辑性框架 在日常的工作中,「软件分析」与「软件设计」这样的词眼经常听到,然而要真正理解「软件分析」和「软件设计」的本质是比较难的,它依赖极强的工作经验,又加...
作者 | 内容生态端团队 导读 大语言模型(LLM)指包含数百亿(或更多)参数的语言模型,这些模型通常在大规模数据集上进行训练,以提高其性能和泛化能力。在内容创作工具接入文心一言AI能力后...
1 AB平台简介 AB实验平台这几年在互联网公司得到了越来越广泛的应用,采用AB实验来评估产品和技术迭代效果也成为主流的业务新功能效果评估方式,数据驱动的文化在这几年得到了不少公司的广泛...
背景: 介绍 天网风控灵玑系统是基于内存计算实现的高吞吐低延迟在线计算服务,提供滑动或滚动窗口内的count、distinctCout、max、min、avg、sum、std及区间分布类的在线统计计算服务。客户端...
本文探讨了运筹学和组合优化方法在3D家居布局生成中的应用,并调研了AI生成3D场景布局的最新方法。文中结合了家居家装业务的实际应用场景,从算法建模和计算复杂度的角度上阐述了室内设计的布...
一、为什么要做稳定性建设 1、从熵增定律引出稳定性建设的必要性 物理学上,用“熵”来描述一个体系的混乱程度。卡尔·弗里德曼提出熵增定律,他认为在一个封闭的系统内,如果没有外力的作用...
本文分享自华为云社区《跑AI大模型的K8s与普通K8s有什么不同?》,作者:tsjsdbd。 得益于AI开始火的时候,云原生体系已经普及,所以当前绝大多数的AI底层都是基于Kubernetes集群进行的资源管...
1 前言 随着得物业务规模的不断增加,推荐业务也越来越复杂,对推荐系统也提出了更高的要求。我们于2022年下半年启动了DGraph的研发,DGraph是一个C++项目,目标是打造一个高效易用的推荐引擎...
原文:Zero-knowledge proofs explained in 3 examples 作者:Tian Daphne 翻译整理:开放隐私计算 & PrimiHub 零知识证明(Zero-knowledge proof)是一种在不泄露陈述内容的情况下证明陈述有效...
作者 | 弘远君 导读 本文以百度垂类离线计算系统的演进方向为主线,详细描述搜索垂类离线计算系统发展过程中遇到的问题,以及对应的解决方案。架构演进过程中一直奉行“没有最好的架构,只有...
背景介绍 伴随物流行业的迅猛发展,一体化供应链模式的落地,对系统吞吐、系统稳定发出巨大挑战,库存作为供应链的重中之重表现更为明显。近三年数据可以看出: 接入商家同比增长37.64%、货品...
背景 索引是数据库中用于加速查询的常用组件,它通过对数据冗余和重组织来加速SQL查询。通常来说,恰当的索引可以提升系统的查询性能。 关于索引存在一些误解,如:索引总是能提升查询性能,...
在本文中,我们将探讨 MySQL 和 MariaDB 服务生命周期和版本管理方式两个方面目前的状况及相关历史背景。 作者:Peter Zaitsev 本文来源:Percona 官网博客 爱可生开源社区出品。 需要说明的...
原文链接:ByteFUSE分布式文件系统的演进与落地 导语:ByteFUSE是字节ByteNAS团队和STE团队合作研发的一个项目,因其具有高可靠性、极致的性能、兼容Posix语义以及支持丰富的使用场景等优点而...
数据点(data points)通常用于描述单个信息单位或观测值,在本文中,它被用来量化“提示词”方法相对于传统方法的效率和效果。文章比较了两种训练(微调)机器学习模型的方法:一种是使用提...
本文分享了一个「传统机器学习算法」在实际业务中的使用场景。 前言 如果嫌麻烦,你可以直接跳到正题观看~ 最近无论是在工作中的交谈,还是在日常刷屏的新闻,铺天盖地的都是大模型。我横竖是...
为啥争吵,吵什么? "你到底在说什么啊,我K8s的ecs节点要访问clb的地址不通和本地网卡有什么关系..." 气愤语气都从电话那头传了过来,这时电话两端都沉默了。过了好一会传来地铁小姐姐甜美的...
前言 随着Flutter稳定版本逐步迭代更新,京东APP内部的Flutter业务也日益增多,Flutter开发为我们提供了高效的开发环境、优秀的跨平台适配、丰富的功能组件及动画、接近原生的交互体验,但随...
本文主要分享如何快速上手ARM汇编开发的经验、汇编开发中常见的Bug以及Debug方法、用的Convolution Dephtwise算子的汇编实现相对于C++版本的加速效果三方面内容。 前言 神经网络模型能够在移...
没有更多内容
加载失败,请刷新页面