一.自动化测试
自动化测试是软件测试中的一种方法,通过编写代码或使用工具来自动执行测试用例从而验证软件功能的正确性,所谓的自动化,也就是不需要人工参与,相比于手工测试,提高了测试的效率和准确性。自动化测试是对手工测试的补充,而不是替代。一般来说在初始阶段,先是对业务设计测试用例,之后待业务需求稳定后,再把测试用例转换成为自动化测试用例,实现自动化测试覆盖,但是往往并非能把所有的手工测试用例都全自动化,有的是半自动化(用例执行步骤中一部分步骤能自动化,一部分需要人工操作),有的则无法转换。
二.为什么要引入自动化测试
在手工测试的基础上,往往存在问题比如需要大量人力投入去做一些重复的测试工作,人工测试效率低下等,或者需要对产品进行长时间20h的测试,或者在测试过程中涉及到一些比较精准的测试操作,比如需要准确时间5min等等,那么引入自动化测试能很好解决上述的问题,从而提高测试效率和测试的准确性。
三.自动化测试根据测试对象分类
自动化测试可以根据不同维度进行划分,根据测试的对象可以划分成web应用自动化测试和android自动化测试;其中web应用自动化测试可以划分成接口自动化测试和ui自动化测试:
1.接口自动化测试
接口自动化测试针对系统的接口层(API),通过直接调用接口的的方法验证系统的逻辑是否正确。特点是易于发现核心逻辑和接口中的问题,易于集成到持续集成/持续部署(CI/CD)流程中。
常用工具包括了用postman来对接口进行手工访问,Swagger/OpenAPI指文档生成工具,记录了接口详情,结合测试框架或者测试平台使用;JMeter则往往用于API的性能测试;常用的接口自动化测试框架比如Pytest。
2.UI自动化测试
UI自动化测试模拟用户操作,从界面层验证软件的功能,布局和交互是否符合预期。特点是覆盖用户操作和界面表现,易于发现界面交互问题,但是需要界面比较稳定,否则维护成本比较高。
常用工具包括Selenium,主要是用在网页上;Cypress:现代化的Web UI自动化工具,支持前端框架。
3.安卓自动化测试
主要是针对Android移动应用进行测试。特点是需要模拟触摸手势,滑动,传感器等功能,支持真实设备和模拟器的测试。
常用工具包括了Appium:支持跨平台的移动端UI测试;Robot Framework,支持android的自动化测试。
四.自动化测试根据测试类型分类
1.全量自动化测试
全量自动化测试指对于软件的所有测试用例,那么利用测试工具平台或者代码逐条对它进行自动化的考虑,是否能把用例执行的步骤自动化,能提高用例自动化覆盖率。像这种的话相对来说是比较麻烦的,需要测试人员利用测试框架或者平台逐条进行自动化,整体的工作量是比较大的。
2.场景自动化测试
场景自动化测试是指把若干操作封装在一个场景里,然后对这个场景里的操作利用测试工具平台或者代码实现自动化,根据软件业务以及从用户的角度出发考虑,可以封装多个场景进行自动化测试,相比于全量自动化测试而言会更加具体。
总结
主要是对自动化测试进行了介绍,以及为什么要引入自动化测试和自动化测试分类
标签:场景,理解,接口,测试用例,UI,测试,自动化 From: https://blog.csdn.net/weixin_42247160/article/details/143944025