自动化测试&UI自动化测试

自动化测试&UI自动化测试

一、定义

自动化测试是由程序去代替人工进行系统校验的过程,它能够解决以下几个问题:回归测试(冒烟测试),兼容性测试web实例化不同的浏览器驱动相当于对不同的浏览器进行操作,从而解决浏览器的兼容性测试问题。性能测试,通过一些工具来模拟多个用户实现并发操作。提高工作效率,保障产品质量。

二、优点

它能在较少的时间内执行更多的测试用例。它能够减少人为的错误。它能够克服手工的局限性。(可以重复执行)

三、分类

web自动化测试、移动app自动化、接口自动化、单元测试、安全测试、桌面应用自动化测试、嵌入式设备自动化测试。

四、UI自动化测试

(1)分类和具备的知识

分类:

web自动化、移动App自动化、接口自动化、单元测试自动化

UI(user interface)通过对web应用和app应用进行自动化测试的过程。适合做UI自动化测试的项目包括:需求变动不频繁,前端代码变更维护不方便。项目周期长,项目短,上线之后不需要再去测试。项目需要回归测试,不用回归测试的也不需要写自动化。它的所属分类包括:黑盒测试(功能测试)、UI自动化测试、白盒测试(单元测试)、灰盒测试(接口测试)。

知识储备:

HTML 、Linux 、数据库、手工测试、python基础

(2)特点

解决的问题:

①回归测试 (冒烟测试) :针对之前老的功能进行测试 通过自动化的代码来实现对上一个版本的问题的回归。
②兼容性测试 :web实例化不同的浏览器驱动相当于对不同的浏览器进行操作,从而解决浏览器的兼容性测试问题。
③性能测试 :通过一些工具来模拟多个用户实现并发操作 提高工作效率,保障产品质量。

优势:

  1. 提高测试效率:相比手动测试,UI自动化测试可以快速、准确地执行大量的测试用例,提高测试效率,减少人工测试的工作量。能够充分利用无人值守的时间来进行测试,特别是非工作时间的执行,工作时间只需要分析测试的执行结果。
  2. 提高测试覆盖率:UI自动化测试可以覆盖应用程序或网站的各个功能和页面,确保每个功能都经过测试,提高测试覆盖率,减少漏测的风险。能够高效实现某些手工测试无法实现或者代价巨大的测试,例如,关键业务7*24小时稳定性测试。
  3. 提高测试一致性:UI自动化测试可以确保在不同平台、浏览器或设备上的测试执行一致,减少人工测试的主观因素,提高测试的一致性和可靠性。
  4. 提高软件质量:UI自动化测试可以帮助检测和修复应用程序或网站中的错误和缺陷,提高软件质量,减少软件发布后的问题。

劣势:

  1. 并不能取代手工测试。
  2. 无法应对被测系统的变化。
  3. 并发工作量大,只有执行次数≥5次时,才能回收成本。
  4. 仅能发现回归测试的缺陷,不太稳定。
  5. 用例开发效率低,后期需要重构。
  6. 业务测试人员和自动化测试人员是两批人,有一定的投资成本。

适用场景:

  1. 需求稳定、不会频繁变动的场景。
  2. 研发和维护周期长,需要频繁执行回归测试的场景。
  3. 需要在多个平台上重复运行相同测试的场景。
  4. 通过手工测试无法实现或成本太高的场景。
  5. 被测软件的开发较为规范,且能够保证系统可测试性的场景。
  6. 测试人员已经具备编程能力的场景。

UI自动化测试什么时候开始做,所属分类是什么?
1.自动化测试在手工测试结束后进行
2.属于黑盒测试

(3)web自动化测试框架

  1. QTP
  2. selenium(主流)
  3. root framework

(4)app自动化测试框架

  1. Appium
  2. Airtest
  3. uiautomator2(python)

引用

[1]https://baijiahao.baidu.com/s?id=1766586331507189876&wfr=spider&for=pc
[2]https://blog.csdn.net/pingsha_luoyan/article/details/104126110
[3]https://blog.csdn.net/JulieJuliezyl/article/details/126444539
[4]https://www.jianshu.com/p/e66288d065cf
[5]https://www.zhihu.com/question/63351498/answer/2811948701

你可能感兴趣的:(自动化测试,可用性测试,功能测试,测试工具,测试覆盖率,python)