本文由千锋软件测试培训老师给大家分享Web自动化测试要了解什么呢?
1、 Web开发类的相关知识。不要认为:web就是前端,也不要以为安卓就是前端。前端是所有人眼/肉眼能够看到的。Web前端是包含了:HTML/HTML5、CSS样式、Javascript等内容的集合。作为测试人员只需要认识和了解就够了。哪怕是自动化测试,也只需要识别出网页上的内容(部分)即可。
2、 开发语言。使用Python完成脚本的编写。Python初学、容易入门,脚本编写简单。
3、 Web自动化测试的专门的工具(框架)——Selenium。专门进行Web自动化测试。
自动化测试的定义:
1、 都要用工具(也是个软件,也需要测试,也有可能有bug,也可以用别的工具进行自动化测试)。不用工具的都是手工测试。
2、 自动化测试不一定对所有的功能都进行。可以对一部分功能进行自动化测试。
3、 自动化测试,就是模拟人工的操作行为。输入、点击等操作,对结果进行检验。(测试工具和软件的外挂有一个本质的区别:外挂一般没有结果检验)
自动化测试的优势:
1、 可重复性。写好脚本后,可以无限制的应用,以及让别人使用。
2、 可程序化。脚本后期可以修改,提升脚本的能力,重新编写。
3、 可靠。不会出现情绪化的表现。
4、 提高测试精确度。可以把时间控制到毫秒,把存储空间控制到字节。
5、 提升测试资源的利用率。一般特指人力资源和时间资源,重点是时间资源。计算机可以在只付电费的情况下,24小时不间断运行脚本和代码。(工作中有测试工程师可以下班后开始运行脚本,直到再次上班,可以直接查看运行结果和记录)
与手工测试的关系
1、 谁发现的缺陷多。手工测试永远比自动化测试能够好、多的发现bug。因为人是有智力活动的。就连AI(人工智能)也比不上人脑。
2、 测试的质量高低。手工测试的质量效果,要高于(好于)自动化测试。自动化测试中,如若脚本没有编写针对某一个功能的测试,那该部分功能将不会被测试。人就会对所见的功能都自觉的进行测试。
3、 与开发的关系。自动化测试加与开发人员的关系密切一些。如果开发的代码改变了,对于手工测试而言,影响可能不大,但是对于自动化测试而言,影响就很大。
4、 局限性。手工测试的优势就是自动化测试的不足。
自动化测试软件:
1) 有些软件是需要付费的商业软件。(通用,查资料比较方便)
2) 自动化测试的软件,专业性较强。不同的软件,专门主攻的业务领域不同
3) 有些软件可能是企业自己研发的。想要操作或者学习,必须请教企业的研发和产品(内部人员)。
自动化测试的流程(概要的流程)
1、 自动化测试决定。先做决定。
2、 测试工具的获取。确定使用的测试工具。
3、 自动化测试的引入。确定自动化测试在什么阶段开始进行,以及对哪些内容进行自动化测试。
4、 测试计划、设计、与开发。制定测试计划,设计测试用例(一般指自动化测试的用例),编写测试脚本。
5、 测试执行与管理。执行脚本,提交缺陷。
6、 测试评审和评估。评审测试结果和过程,是否满足测试计划和需求。
注意:测试活动本身就应该循环不断进行,因此很多地方会把测试的过程和流程画成循环的模式。
自动化测试和手工测试中,各个环节的时间和精力消耗:
测试方案的选择
注意:如果你是个执行者,按照领导的要求进行即可。如果你是个管理者或者拥有一定的决策权,那必须考虑。
1、 对项目的影响。综合考虑自动化测试对项目的进度、测试覆盖率、风险的积极方面的影响。自动化测试的主要目的就是为了提升测试的效率,进而提升项目的开发进度。
2、 复杂度上。过于复杂的自动化测试过程,对项目是不利的。
3、 时间。完成代码编写,脚本的设计,需要多长时间完成。
4、 早期需求和代码的稳定性。项目早期,需求不断变化或者不稳定的时候,不进行自动化测试。
5、 编写和维护代码的工作量。自动化测试不能搞成天天改脚本和代码,这样就没有了自动化测试的意义。
6、 覆盖率。自动化测试的脚本要能够大规模覆盖主要功能。
7、 资源。人力资源在自动化测试中占比很高,成本也很高。
8、 自动化测试的执行。技术是不是能够支持。(有些企业不想投入自动化测试的人员,让研发写好脚本,让手工测试人员执行脚本)
自动化测试适用场景以及不适用的场景
1)不稳定的都不适用
2)有物理设备的,都不适用
3)能人工完成的,都不适用
4)大量、重复的、频繁的测试,一定适用
4)回归测试(大规模的)一定适用
相关文章
关注千锋学习站小程序
随时随地免费学习课程
扫一扫快速进入
千锋移动端页面
扫码匿名提建议
直达CEO信箱