自动化测试之前确认你的项目符合哪些要求?
发表时间:2023-10-25 07:02:35
文章来源:炫佑科技
浏览次数:122
菏泽炫佑科技
自动化测试之前确认你的项目符合哪些要求?
自动化测试的优点:
避免重复工作,提高测试效率,保证每次测试的一致性和可重复性,更好地利用资源(周末/晚上的资源空闲时段),节省人力资源,增加软件信任,缩短软件开发和测试周期获得产品更快地推向市场,提高软件测试的准确性和精确度,并增加软件的信任度。
在进行自动化测试之前,请确认您的项目满足以下要求:
软件需求变化不频繁,产品更新和维护周期长自动化软件开发,回归测试相对频繁,自动化测试脚本可重复使用。 否则,仅仅准备大量的测试脚本就足以让测试人员崩溃。
自动化测试工具的选择
银行/系统:
· 优点:应用*广泛的开源框架缺点:需要写代码,入门门槛比较高
· QTP 优点:可以录制脚本,支持C/S架构 缺点:商业工具,VBS过时的语言
CS:
·QTP
· 快速宏
· ETC
应用程序:
1、:
· 官方提供,只能做Java原生APP的自动化测试。
· 理论上不算是UI自动测试框架,更适合测试app的稳定性。
· 可以录制,但脚本按照坐标轴定位,兼容性差。
· 使用的人很多,文档也比较齐全。 也支持,但是不支持跨进程。 语言是java。
· 支持app和跨进程,可以用多种语言编写脚本java、ruby、c#...目前不支持获取 toast
· 语言Java,底层也不支持跨进程
2.IOS
· 苹果自己的
· 同时支持,提供的API基本相同,代码复用率高
· 同时支持,提供的API基本相同,代码复用率高
我选择了哪个工具? 答案是:+,原因如下:
① 它是一个Web应用程序的自动测试工具。 它提供了一组友好的API。 主要实现:模拟人使用网页应用,自动打开浏览器、打开应用程序、进入应用程序进行各种模拟业务操作等,并且免费、紧凑、支持多语言开发、支持多平台。
②语言简单易学。
UI自动化测试示例:
今天我们要讨论的是 Node.js 模块。 API非常丰富,同时支持。 但说到这里,你首先需要了解开发流程。 我这里就不详细说了。 如果您有兴趣,可以看一下。
使用模式有两种,一种是Mode,一种是WDIO。 官方其实推荐使用WDIO有几个原因:
1、调试方便
2. 多模块并行测试
3、命令的执行是同步的,通过变量直接接收结果。 不需要像Mode然后...然后...那样进行异步操作
4.提供配置文件,使测试参数的配置更加简单
让我们开始我们的项目:
项目建设条件:
安装JDK
安装 Node.js
安装
安装-
安装wdio
安装mocha、测试框架
安装 chai、诊断库
目录结构:
测试项目目录结构
.json:
“”:{
"": "^4.6.2", // 库
"-": "^6.2.0", // , 浏览器安装
"wdio": "^0.3.3", // wdio 测试运行器
"wdio-mocha-": "^0.5.9", // Mocha 测试框架
"chai": "^3.5.0", // 诊断库
"wdio-spec-": "^0.1.0", // 控制台输出测试报告
"-": "^1.5.0", // 根据测试结果生成测试报告
"wdio--": "^0.1.2" // 根据测试报告显示更直观的UI界面
},
“”:{
"": "-开始", // 开始
"test": ".\\\\.bin\\wdio", // 执行测试
"": " - && open" //生成测试报告
关于wdio-spec-、-、wdio--不是全部都需要安装。
- 软件包安装成功后,需要执行以下命令来安装各个浏览器。 点击这里查看详细说明: -,您在使用过程中可能会遇到问题。 建议尝试绕墙。
-
安装成功后,执行以下命令启动-:
- 开始
wdio配置文件:
var = ('./');
var = ('./');
。 = {
// - 要启动的IP和端口,默认为4444
主机:'127.0.0.1',
端口:4444,
//哪些文件执行测试
眼镜: [
'.//*.js'
],
//哪些文件不执行测试?
:[
'.//.js',
'.//.js',
'.//.js'
],
//使用什么浏览器来执行测试
:[{
: '',
: 1, // 可以并行启动执行的浏览器窗口*大数量
:{
参数:['-']
}],
: '',
: 真的,
: .,
: , // 100 秒
:“摩卡”,
: ['spec', ''], // 两种测试报告方法
:{
:{
: '-' // 测试结果上传目录
},
:{
用户界面:'bdd',
: // 整个测试执行的超时时间应该尽可能长
},
//每次测试执行前清除之前保留的测试结果
: (,) {
.('./-');
.('./-');
};
登录测试用例:
('登录测试', () {
它('登录',(){
。() // 删除所有
.url(. + '/login.htm') // 打开登录页面
.('#', ..) //设置手机号码
。('#', ..) // 设置密码
.click('#') // 点击登录按钮
.('#', .); // 如果该元素存在则表示成功
});
});
方法注册及调用说明:
// 可以通过 .() 调用
.('', () {
$('. .[id="' + + '"]').click();
.('.', .);
变量=
.( () {
var 文本 = null;
$('. . .').each( () {
文本 += $(this).text();
});
文本;
});
// 断言正则表达式方法
.match(.value, /已成为好友|加入成功|已申请|申请成功/,'判断收到的消息是否包含指定内容');
});
执行测试:
控制台A
npm run //开始-
控制台B
npm run test //执行测试
生成测试报告:
npm 运行
某个测试结果
总结:
UI自动化测试是各大公司招聘JD的重要考察点。 核心是考察你通过“自动化测试能力”解决了哪些实际业务问题,做出了哪些创新和突破。
限制我们想象力的不是缺乏技能,而是缺乏知识。 在适当的时候引入某种测试方法来解决实际的业务问题,才是一个测试人员应具备的核心竞争力。 在此之前,请努力拓展知识,积累解决问题的经验,不断思考和创新,那些所谓的“救命稻草”其实只是稻草自动化测试之前确认你的项目符合哪些要求?,并不能“拯救生命”。 一切都要靠自己多学、多看、多实践!
我是谁?
我是一名从事软件测试多年的老测试人员。 今年年初,我花了一个月的时间整理了一份2020年*适合学习的软件测试学习资料清单,可以送给每一个对软件测试感兴趣的人。 ,如果你想获取,可以关注我的头条号,后台私信我:【测试】,即可免费获取。