1、什么是自动化?

把人为驱动的时候转换为机器执行的一种过程。也就是模拟人操作的一种的行为

2、自动化测试的分层

单元自动化测试【数据处理层】:指对软件中最小的可测试单元进行检查和验证,一般借助于单元测试框架,如java的junit,TestNG,python的unittest,常见的手段是code review等

接口自动化测试【业务逻辑层】:主要检查验证模块间的调用返回以及不同系统,服务间的数据交换,常见的接口测试工具有postman,jemter,loadrunner等

UI自动化测试【GUI界面层】:UI层是用户使用产品的入口,所有的功能通过这一层提供给用户,测试工作大多集中在这一层,常见的测试工具有utf,RF,selenium,appium等

3、自动化测试面临的挑战

面临的最大的挑战就是变化,因为变化会导致测试用例运行失败,所以需要对自动化脚本不断的进行debug,如果控制成本,降低成本是对自动化测试工具和人员的挑战。

4、什么样的项目适合做自动化?

需求稳定,不会频繁变更

回归测试的功能模块

定期构建,测试验证

UI界面稳定,变动少

多平台运行,组合遍历型,大量的重复任务

软件维护周期长,有生命力

项目进度压力不大

被测系统开发较为规范,可测试性强

具备大量自动化测试平台

测试人员具有较强的编程能力

5、常见的自动化测试工具:

UFT

ROBOT FRAMEWORK

selenium

appium