自动化测试


什么是自动化测试

将手工执行的部分测试行为转换为机器可以识别的语言,从而交由机器来实现测试的行为,这种就叫做自动化测试

自动化测试分类

  1. 自动化性能测试(性能测试)
  • Jmeter
  • LR
  • Locust
  1. 自动化功能测试(自动化测试)

工具:RobotFrameworkAirTest(手游端比较火),Playwright(微软开发的),Selenium IDE(新版),Cypress(不用这个,弃了),HTTPRUNNER(太老了,不建设使用)。

应用层:

  • Selenium为核心。
    • Python:Selenium WebDriverAppiumRequests
    • Java:Selenium WebDriverAppiumHTTPClient

自动化测试开发这个岗位的定义?

很多人认为测试平台是测开,做测试框架是自动化测试。

测试开发本质是测试工作,不是开发工作。

测试平台与测试框架的区别?

  • 测试平台:前端+后端,web系统为主体存在的架构体系。(测试平台的本质意义是web系统的开发,不是为了测试服务的)。
  • 测试框架:纯后端开发为主体的架构体系。一般用在服务端部署为主。(测试框架是服务的开发,是专门为测试服务的)。

注意事项

  • 自动化测试是专门为了部分业务来实现的。而不是全链路。
  • 如果自动化测试是为了全链路负责的话,这个行业就会被淘汰了。
  • 自动化测试主要是为了核心业务来实现的,目的是为了提升测试效率,降低重复固化工作的操作行为。

自动化测试的分层

分层示意图

image

分层理解

  • UI层:包含WebUIAppUI。(建议:除非必要,否则最好不要做App自动化测试)。如果非要做APP自动化,建议通过工具的形式走会更方便一些。

    • 实现UI系统交互的自动化测试,主要用于核心业务的自动化测试行为。
    • 应用在回归测试阶段,对固化的流程通过自动化进行回归,提升测试效率。本质意义上就是一种测试手段,一般而言UI自动化覆盖率在40%-60%之间。覆盖率就是自动化测试所覆盖的内容,占据整个系统的多少比重。比重的高低都是基于测试框架本身的设计行为所计算出来的。所以说自动化测试的技术最核心的点是测试框架的设计能力
  • Service层:集成测试阶段,主体是数据的交互。所以应用接口自动化测试技术实现。主要用在后端的接口联调以及回归测试阶段。可以极大地提速测试的效率。目前应用最为广泛的自动化测试阶段,因为接口本身的变动会比较低。

  • Unit层:单元测试层级,目前大家不需要考虑的层级。单元测试的手法主要讲究的是覆盖率。如:条件覆盖,逻辑覆盖。单元测试的核心思想:每一行代码至少执行一次。单元测试就是一个苦力活。国内目前单元测试主体是开发人员自己完成的。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM