一、自动化测试概述
软件自动化测试是相对手工测试而存在的,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。在此过程中,节省人力、时间或硬件资源,提高测试效率。
二、自动化测试优势&劣势
优势:
提高测试执行效率,节约时间成本;
解放人力去做更重要的工作;
可重复利用,建设对人的依赖;
提升客户满意度;
提升测试团队的整体水平;
可大幅度减少兼容性测试的工作量;
有些测试工作必须依靠自动化实现来完成;
劣势:
开发测试脚本需要花费较大的时间成本,拉长周期;
产品的快速迭代,自动化脚本也将不断迭代,时间成本很高;
不同的项目之间自动化脚本的复用度很低;
对短期型项目产品实现自动化价值不高;
自动化无法完全代替手工测试找到bug,实现100%覆盖;
自动化更多的适用于回归测试;
自动化开发过程对软件测试团队的技术有更高的要求;
三、自动化测试常用工具
代码级别:
XUnit:junit,cppunit,NUnit
mock工具:JMock,PowerMock
静态代码扫描:findbugs、checkstyle、pmd、godeyes、fireline、oclint、infer、jslint等等
API层:
jmeter、postman、newman、soapui、python+requests、java+restassured
UI层:
appium、selenium
如果从代码级别做起来自动化的话,发现问题越快,修改成本越低,但是前期投入量大,入手难度大。
如果从ui层入手的话,入门简单,但是如果遇到ui频繁变动的话,维护成本高,并且ui层主要用于回归测试,保证之前功能是ok的,很难用来去发现bug
api层,入手快,执行效率高,发现问题快,所以尽量从api开始做。
最后:下方这份完整的【自动化测试】视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取 【保证100%免费】