自动化测试的基础概念

自动化测试的基础概念

为什么先从这个概念开始谈起,因为对于新手来说,总是把自动化看得很高端和复杂。

先来看看功能测试如何进行的:编写测试用例,然后测试人员根据测试用例执行操作步骤,执行用例后对比实际结果与预期结果是否相等。如果相等,测试通过;如果不相等,测试失败。

自动化测试做事欧根功能测试没有区别,这里的自动化主要包含三个层面的自动化,单元测试自动化,接口测试自动化和web测试自动化。

1、 单元测试自动化

调用被测试的类或方法,根据类或方法的参数,传入相应的数据,然后,得到一个返回结果。最终断言返回的结果是否等于预期结果。如果相等,测试通过;如果不相等,测试失败。所以,这里的单元测试关注的是代码的实现与逻辑,一般是由开发来做。

2、接口自动化

根据接口文档,编写测试用例,根据测试用例向接口提交请求数据,根据返回结果的数据去判断状态码,响应的msg,去判断接口测试是否通过。所以,接口测试关注的是数据。只要数据正确了,功能就能做成大半,剩下的无非是如何把这些数据展示在页面上。

3、Web测试的自动化

这种测试更贴近用户的行为,模拟用户点击了某个按钮,向个输入框里输入了什么,但是用户可以看到登录成功了,但是web自动化并不知道它刚才的点击有没有生效。所以,要找到“证据”,比如,登录成功后页面右上角会显示“欢迎,XXX”

这就是登录成功的有力“证据”。于是,当web自动化登录成功后,就去获取这个数据进行断言。断言如果相等,测试通过;如果不相等,测试石板。所以,web自动化的关注用户操作形为,页面上正在的按钮和输入框是否可用。

从测试的行为本质上来看,功能测试与单元自动化测试,接口自动化测试和web自动化测试并没有区别。唯一的区别是,一个由人来执行,一个由代码或者工具执行。

很多同学认为,有了自动化,我们就可以高枕无忧的喝着咖啡翘着二郎腿坐等测试报告了,其实并没有。因为能够做自动化的项目,一定是经过你很多次测试并且框架和功能相对来说是比较稳定的才会去编写自动化测试代码;也并不能说你掌握了自动化,你就可以拿高薪走向人生巅峰了,主要还是看你的自动化框架在公司是否适用,对你们公司的产品项目来说是否适用,如果你们公司的产品是个动辄小改图片的按钮,不然大刀阔斧的改功能,那么自动化也就是说说而已,因为你自动化框架还刚起步,然后这边已经产品改动了。所以自动化也是测试的一种辅助方式,最重要的还是做好功能测试啊!那么肯定有同学会问,什么样的情况下我们可以做自动化测试呢?接下来我们就什么阶段我们可以做自动化,什么项目适合自动化。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181226B119D400?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券