发布时间:2020-06-16
自动化测试是指使用自动化测试工具代替人工的方式来执行测试用例。使用工具的原因一方面是为了代替人工执行那些简单、重复而枯燥的动作,从而节省人工的时间,让软件测试人员投入到真正有价值的探索式测试中;另一方面,像性能测试之类的的压测场景我们很难使用人海战术进行测试而只能借助于工具模拟的方式来进行。
测试自动化是指在软件测试全生命周期过程中每一个环节都尽可能用自动化的方式来解决。所以它不仅仅关注测试执行过程,还包括测试数据准备、测试环境搭建等等都可以通过自动化的方式实现。
自动化测试框架是用于创建自动化脚本的特定方法,它是一组为自动化提供支持的原则、概念和实践。
自动化测试框架的特点:
在编写脚本时遵循一组严格的原则。这些原则主要关注于减少自动化脚本的维护和提高脚本的质量。
确保自动化脚本具有数据可行性,因此它们可以在各种数据集上执行。
实现可重用、健壮和高效的自动化脚本。
一个基础的自动化测试框架体系结构涉及以下主要组件:
驱动引擎:控制其他组件或者工具执行的主要代码。
数据管理
这里提到的数据管理包括三个方面:
参数管理:需要对输入输出参数进行统一管理,提高脚本可维护性
环境变量:需要对测试环境变量做到可配置管理,提高脚本的健壮性
测试数据:测试数据的输入,是否能支持多种文件格式的导入,甚至是数据库直接取数的接口等
对象存储库:保存对象定义的文件。
异常处理:当脚本执行出现错误的时候,需要有异常处理的机制,是继续往下执行还是直接退出?这里需要有处理错误或异常的机制。
执行机制:执行脚本的机制。是否批量执行?是否定时执行?是否可分布式执行?
测试结果及报告
存在两个层面的测试报告:
脚本层面:测试报告是否可以显示每个脚本的执行时间、每个步骤的执行时间、每个步骤的执行结果、错误日志和错误截图等;
任务层面:每个执行任务到底多少脚本执行成功、多少脚本执行失败、百分比如何等等。
为什么必须需要使用自动化测试框架?因为自动化测试框架可以提供很多好处:
1. 优化的资源
测试框架有助于优化资源。它通过根据组织需要促进不同资源的使用来做到这一点。例如,为了实现既定的目标,测试自动化框架提供了一组过程。这些流程必须将资源与需求匹配起来。采用的灵活性越高,资源优化就会越好。
2. 增加测试量
测试自动化框架增加了测试量。例如,新的移动设备每隔一天就会出现。不可能对所有对象执行手工测试。即使一家公司成功地做到了这一点,也要花很长时间。但是自动化测试使测试人员能够同时在数千个移动设备上运行测试。
3.同时测试
测试自动化框架支持同时测试不同类型的设备。当测试脚本被自动化时,所有测试人员需要做的就是在不同的设备上运行它们。由于参数相同,测试人员可以快速生成比较测试报告。
4. 提高速度和可靠性
编写和运行测试对于任何软件公司来说都是非常耗时的。测试自动化框架减少了执行这些活动的时间。假设您正在测试网站的注销功能。如果有多个测试场景,对于每个场景,您都必须手动测试注销功能是否正常工作。但是如果您正在使用一个框架,您可以同时运行所有的场景并在很短的时间内获得测试结果。此外,由于使用了自动化工具,自动化测试更加可靠。这减少了出错的机会。
5. 用更少的时间产出更多的产品
测试自动化减少了同步、本地配置、错误管理和报告生成方面的挑战。自动化脚本最小化了准备和运行测试所花费的时间。随着效率和速度的提高,企业可以在更短的时间内获得更多的产出。
6. 在早期阶段修复bug
测试自动化框架有助于在早期阶段修复bug。你不需要太多的人力来为你执行,这意味着工作时间和费用也减少了。测试自动化工程师可以编写脚本并自动化测试。
7. 远程测试
有了测试自动化框架,就没有必要每天24小时呆在办公场所。例如,您可以在离开之前开始运行一个测试。几小时后你回来时,测试结果就会出来了。此外,你不需要买很多设备,因为你可以远程测试。
8. 可重用的自动化代码
您可以在不同的应用程序中重用测试自动化脚本。假设您的组织的测试人员编写了一些脚本来测试登录功能。您可以对另一个具有登录功能的应用程序使用相同的脚本。
10. 增加ROI
测试自动化框架中涉及的初始投资对许多人来说是令人不快的。但长期投资回报率很高。正如前面所讨论的,测试自动化框架可以节省时间并促进快速交付。它还减少了对更多员工的需求。
例如,如果测试框架是自动化的,那么一个公司就可以测试人员投入到更有价值的事情上,提高ROI。测试自动化工程师可以执行大多数任务,比如配置框架或运行脚本。
相关阅读:
您的信息已成功提交!
我们的客服人员稍后会与您联系