首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

三生三世之RobotFramework

三生三世之RF花开(2)

上节为本系列开篇,讲叙了为什么需要自动化。本节将会按照规划书的过程,讲叙自动化测试的优点以及存在的问题。

1.自动化测试的优点

1.1 在程序的新版本上运行现有的回归测试

能够运行以前创建的测试,而不需要额外的工作,提高测试的效率。

1.2 运行更多更繁琐的测试

在较少的时间内运行更多的测试。

1.3 执行一些手工测试困难或不可能进行的测试

比如,对于大量用户的测试,不可能同时让足够多的测试人员同时进行测试,但是却可以通过自动化测试模拟同时有许多用户,从而达到测试的目的。

1.4 更好地利用资源

将繁琐的任务自动化,可以提高准确性和测试人员的积极性,将测试技术人员解脱出来投入更多精力设计更好的测试用例。有些测试不适合于自动测试,仅适合于手工测试,将可自动测试的测试自动化后,可以让测试人员专注于手工测试部分,提高手工测试的效率。

1.5 测试具有一致性和可重复性

由于测试是自动执行的,每次测试的结果和执行的内容的一致性是可以得到保障的,从而达到测试的可重复的效果。

1.6 测试的复用性

由于自动化测试通常采用脚本技术,就有可能只需要做少量的甚至不做修改,实现在不同的测试过程中使用相同的用例,如数据驱动。

1.7 早些时候上市时间

重用测试和缩短测试执行时间加快了对开发人员的反馈周期。这最终缩短了上市时间。

1.8 增加了信心

由于测试是自动执行的,所以不存在执行过程中的疏忽和错误,完全取决于测试的设计质量。一旦软件通过了强有力的自动测试后,软件在发布时候的信心自然会增加。

上述大部分优点可以用效率和重用来总结。自动化测试有助于在测试系统的不同版本中不断重复地运行大量的测试用例;减轻测试工程师的工作量,并免除他们重复的任务。所有这些都有增加软件质量和缩短测试时间的潜力

虽然这看起来很有吸引力,但是在实际项目中实现他们还是需要大量的艰苦工作。如果自动化没有做好,它将被抛弃,这些优点永远不会实现。

2.自动化测试存在的问题

2.1 不切实际的期望

管理人员可能认为测试自动化将解决他们所有的测试问题,并神奇地使软件质量更好。自动化测试工程师应该帮助管理者正确设定他们的期望。

2.2 测试执行不充分

如果测试实践和过程是不充分的,那么最好开始改进它们,而不是引入测试自动化。

2.3 期望自动化测试将发现许多新的缺陷

在自动化测试成功运行之后,除非测试的功能发生了变化,否则不太可能发现新的bug。自动化程序在开发测试时通常比在重新执行测试时发现更多的缺陷。

2.4 虚假的安全感

仅仅看到一个没有失败的测试报告并不意味着SUT没有任何失败。测试可能是不完整的,要么没有测试所有的特性,要么在出现故障时看不到故障。自动化测试本身也有可能有缺陷并显示错误的结果。

2.5 维护

当SUT发生变化时,它的测试也会发生变化。人工测试工程师能够毫无问题地处理即使是重大的更改,但自动化测试可能在轻微的更改之后失败。如果维护测试自动化系统比手工测试花费更多的时间,那么它肯定会被抛弃。如果向自动化系统添加新功能过于繁琐,也会发生同样的情况。

2.6 技术问题

建立和使用测试自动化系统是一个技术挑战,不太可能没有问题。工具可能与被测试的系统不兼容,而且它们本身也有缺陷

2.7 组织问题

成功的测试自动化项目需要较高技术技能和来自管理层的支持。自动化测试对组织也有很大的影响,需要在许多方面进行更改。

此外,很多时候,人们往往会忘记了自动化测试本身就是一个软件项目。自动化测试项目本身也是需要按照SOP进行管控,得到足够的管控,否则就会有失败的风险。

小结,本节详细的介绍了自动化测试的优点和实施过程中可能存在的问题,下节介绍自动化的不同方法。未完待续...

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180830G1QW2700?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券