自动化概述

  • Post author:
  • Post category:其他




前言


本文要记录的大概内容:

什么是自动化?

测试金字塔?

自动化测试的分类?

自动化测试的工具有哪些?




一、什么叫自动化?

自动化:是使用一些工具(或程序)的方式来代替或辅助手工测试的行为



二、测试金字塔

Mike Cohn对测试金字塔的详细描述,测试分为三层:

1.UI层

2.Service层

3.Unit层

并倡导应该进行更多的Unit测试。

在这里插入图片描述

金字塔从上到下,体积越来越大,代表应该投入的测试工作量。



1.UI层自动化测试

UI层是软件产品交互的界面,需求变动多;为了减轻测试人力成本,诞生了相关工具,例如 QTP,Selenium,RobotFramework等

UI层测试交互功能,还需要测试前端代码!

Qunit是测试JS的一个强大单元测试框架。



2.Service层自动化测试

Service层重点是接口测试:

1.模块之间的接口:该类接口的测试主要是对类或者函数的调用,然后去验证返回的结果

2.服务接口:前后端之间的接口调用,对其返回的结果进行验证。

接口测试工具:Postman,Jmeter,SoupUI等



3.Unit层自动化测试

就是批量的单元测试;

单元测试需要懂相关代码,分析局部数据结构,查看代码的编写规范;

单元测试框架:Junit,pytest,unittest等



自动化测试适用的范围?

1.需求变动小的项目,稳定的项目

2.需要大量的回归测试

3.UI层变化频率低



常见的自动化测试工具



1.Selenium

体积小:只有几百KB

多语言:支持Java,C#,Python等

兼容性强:支持chrome,IE,Firefox等常用浏览器;

原理:来自

白月黑羽博客

的图片

来自百月黑鱼的图片

当我们使用selenium编写操作步骤,当执行这些操作时,实际上是以一个HTTP请求发送给浏览器的驱动,浏览器驱动包含一个用来接受这些的请求的HTTP Server,然后将HTTP请求规范化,然后根据规范化的内容去操作对应的浏览器,再将执行结果返回。



版权声明:本文为qq_41522951原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。