动态网站开发视频教程百度助手应用商店下载安装
2021.04.23
功能的自动化测试工具主要(常见)应用领域:回归测试
软件自动化测试的产生?
- 从性能测试看:用工具的方式完成,手工方式无法替代(人海战术或许可以?但需要考虑投入产出比);时间,空间(数量),比如30min,500人请求。
- 软测包含大量重复操作性。
- 手工模拟真实环境较难。
- 软测大部分工作非智力创造性?
- 手工测试获得的测试结果不精确…
软件自动化测试的意义?
把上面的问题解决就是意义。
- 减少测试人员的工作量。
- 提高测试效率(和第一点差不多);工具只是手段之一。
- 增强测试的准确性。
- 无人值守?自动运行?依赖前提:脚本必须正确,不然会很痛苦,反复调试。
自动化测试阶段?
设计、执行、发现缺陷、跟踪问题。
工具能做的只是执行,设计,发现缺陷,跟踪得自己搞。
- 自动测试决定
首先,项目计划时期就应确定是否使用自动测试。
决定使用后,需考虑的点:
- 针对工具,如何使用
- 无论在任何阶段或在任何周期当中,使用工具之前,必须要先做一次手工测试(即使是全正向操作),建立一个相应的测试基线(识别是否有缺陷的关键)。
- 工具跑完测试脚本和用例后,不会告诉你是否有缺陷,只会告诉你脚本成功与否。即软件是否有缺陷和脚本是否成功运行无关。
- 测试工具获取
购买或者用开源的…略
- 自动化测试引入
引入是要有时间节点的。由第一步自动测试决定中的计划来决定的。计划决定什么时候引入就什么时候引入。
- 测试计划、设计与开发
测试计划并不指项目测试计划,而是当前被测软件在做自动化测试时的测试计划。
自动化测试也有自己专门的测试计划。同时也要做专门的脚本的设计与开发,其中开发的意义重大。
- 测试执行与管理
如果脚本开发顺利,这一步就可以开跑。跑的过程中监督过程,收取相应结果。
- 测试评审和评估
最后对当前的自动化测试做相应的评审和评估。
如何开展自动化测试?
行业规律:无论一转自动测试的团队人员能力如何,团队默契程度如何,首次引入自动化测试时,效率一般会不升反降。简而言之:需要磨合。(用一些小项目练练手,发现问题)
自动化测试只有在多次运行后,才能体现出自动化的优势,只有不断地运行自动化测试,才能有效预防缺陷、减轻测试人员手工的回归测试的工作量。
- 如果一个项目是短期的,并且是一次性的项目,则不适合开展自动化测试,违背了不断运行这一点。
- 不宜在一个进度非常紧迫的项目中开发自动化测试,紧迫的项目中,能关注到基本测试点就不错了。
自动化测试何时介入?
说白了就是啥时候开始录脚本。方式:完成以前手工测试完成的事情。手工测试简单来说就是输入看输出。工具的基本原理即是把手工测试的输入由常量变成变量,来测试多种可能。
界面稳定后,可以考虑开始介入
识别控件的方法:
一般来说有两种方式识别控件,一是根据控件名称(有时可能出现同名控件),二是根据控件坐标位置。控件可能出现同名,但是显示重复的可能性不会有。比如:输入电子邮件地址框和输入密码框由于未知的原因,控件名称一样,此时我们还可以根据位置来确定哪个框是干嘛的,基于(X,Y)来判断
工具可以记录控件的位置,作为录制和准确回溯的一个参考指标,所以稳定的界面,相对来说比较好介入自动化测试。