自动化测试部署之决胜于开始

发表于:2013-12-19 11:51

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:hblxp321    来源:51Testing软件测试网采编

分享:
  1.3何时开展自动化测试
  什么时候适合开展自动化测试呢?
  测试工作中,被测软件(或系统)需要多个版本的迭代。根据公司(或项目)的不同,版本发布的时间也存在差异。
  开展自动化测试之前,首先需依照测试用例,对被测功能模块展开手动测试。当手动测试执行通过后,使用自动化测试工具,将手动测试的操作过程录制下来,并将正确的结果进行保存(被称为期望结果)。由于自动化测试工具记录的为关键性功能模块,被测软件(系统)的下一版本发布后,该模块仍应进行测试。
  在软件新版本的测试中,启动自动化测试工具,运行前面录制好的自动化测试脚本。对比实际运行后的结果与预期结果,如不一致,则确定为缺陷;如一致,则认为该功能模块在新的版本中测试通过。
  到此,可以得出一条结论:自动化测试,适合在被测软件(或系统)版本相对稳定后开展。如软件版本相对不太稳定,则会造成使用自动化测试工具录制的脚本在新的版本中回放失败,这样既浪费人力,又浪费时间。
  1.4 自动化测试的优势
  自动化测试的开展究竟能给测试工作带来哪些改进,带来哪些突破与欣喜呢?其实,自动化测试的特点即能够很好的概括自动化测试的优势。其主要特点如下:
  1. 可重复
  不可否认,软件测试有时确实是繁杂且重复性较高的工作。关键性功能模块要在不断迭代的测试版本中重复的测试,而这些工作,随着软件测试版本的迭代将一直持续下去。当开展自动化测试后,即可通过自动化工具来替代这些重复性工作。大大缩减回归测试的工作量与压力,有效提高工作效率,缩短回归测试的时间。
  2. 可程序化
  自动化测试深入开展后,将不再是简简单单的录制与回放,自动化测试将优化录制的测试脚本,大大提高脚本的灵活性与交互性。自动化测试录制后生成脚本,脚本中包含录制过程中生成的操作与数据。测试工作中,需用不同的测试数据覆盖不同的测试路径来满足不同的测试场景。
  因此,数据维护将是一个繁杂的工作。可以将数据与录制的自动化脚本剥离,用外部数据源管理测试数据,而测试脚本只负责测试流程的组织。这样,就可以大大提高自动化测试的灵活性与可持续性。
  后续自动化测试工作中,还可开发UI界面,使用UI驱动自动化测试脚本。增加自动化测试交互性。
  3. 可靠,提高测试精确度
  自动化测试可以执行一些手工测试难以达到或不可能实施的测试。例如,测试工作的执行要精确到秒;模拟大量用户同时对某一个功能点展开测试。这些工作都是手动测试无法实现或很难达到的。而开展自动化测试后,很容易实现这些测试需求。
  4. 资源的有效利用
  将繁杂重复的测试任务实现自动化,可以提高准确性和工作效率,提高测试工程师的工作积极性。将测试工程师从繁杂重复的工作中解脱出来,投入更多精力到其他的测试工作中(如测试质量),这更有利于测试质量的提高。在实际工作中,有些测试场景是仅适合于手动测试的,测试工程师可以专注于手动测试部分,提高手动测试的效率。
  1.5 自动化测试实施的场景
  1.4小节中提到,并非任何手动测试都适合用自动化测试来替代。究竟哪些场合适合开展自动化测试呢?
  v 回归测试;
  v 更多更频繁的测试 ;
  v 手工测试无法实现的工作 ;
  v 跨平台产品的测试;
  v 重复性较强的操作 。
  哪些场合又不适合开展自动化测试呢?
  v 软件版本不稳定;
  v 涉及与物理设备交互的测试;
  v 测试结果较容易通过人工判断的测试。
  1.6 实施自动化测试的成本
  当前,很多企业或管理者期望借助软件测试自动化作为催化剂,提高效率、提高质量,同时,节省开支。甚至有些企业希望实施自动化测试后,就能够给企业带来效益。
  在此,可以肯定的是自动化测试已经在很多领域成功实施,也有很多成功案例给了企业希望,并且这些企业成功实施自动化测试后,确实节省了相当可观的费用。而不幸的是,也有很多失败的案例,即使在看到光鲜的成功案例背后,也有失望与失败的过程。身边也有很多企业不止一次尝到了自动化测试失败的滋味。花巨资购买自动化软件,被搁置,努力化为了泡影。失败的结果不仅仅造成了人力、物力的损失,更是直接给公司带来了经济上的损失。
  测试自动化实施前期需要考虑很多因素,人力、物力、财力都是需要认真考虑与规划的。自动化测试在整个测试周期中何时开展,哪些测试工作可以由自动化测试替代,这些都需要在开始部署自动化测试前,认真的思考。影响自动化测试效率的因素,不单单是大家看到可量化的测试工作,还有许多无形的因素影响着自动化测试,如测试组织的部署等。因此,在真正实施前一定要认真规划和考虑自动化测试实施方案。
  自动化测试的实施过程,完全不同于手动测试。自动化测试用例与手工测试用例也大不相同。自动化测试实施过程中,需要不断的开发与维护脚本,因此对测试人员能力有很高的要求。
  自动化测试实施前,需要认真分析与规划测试方案,计算自动化测试的成本。自动化测试成本包括以下几方面:
  v 软件成本:自动化软件产品购买的费用;
  v 培训成本:自动化测试工程师培训费用;
  v 人力成本:自动化测试用例和测试脚本的编写的人力成本。
  只有合理的规划自动化成本,站在全局角度考虑自动化的成本与收益,方可增加自动化方案成功实施的可能性。
22/2<12
重磅发布,2022软件测试行业现状调查报告~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2023
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号