Time will tell.
自动化测试想要顺利开展,管理者需要做具体的规划。下面是为自动化测试项目启动梳理的思路,算是草稿。笔者在自动化开展工作上也只是个探路者,希望在这方面有成功经验的朋友们不吝赐教。
本文档要阐释的问题
- 自动化测试开展的必要性(自动化测试要解决的问题,自动化测试能做哪些工作?预期收益)
- 自动化测试要哪些投入,人、时间和资源。如何分工?
- 自动化测试开展的里程碑,输出物
- 自动化测试要如何跟我们现有流程相结合
- 从哪些方面避免自动化测试工作的失败? 需要避免的陷阱
- 自动化的测试目标,测试的用途是什么?怎样帮助发现程序错误?发现什么程序错误?测试需要理解产品的用户领域吗?
测试自动化的目的
- 迅速监测出新版本中的不稳定变更
- 尽可能迅速暴露回归程序错误
- 快速报告问题,因为这会使程序错误修改更容易
快速修改会使代码稳定,使代码稳定会节省时间(不会有多人在相同程序错误上浪费时间),并促进通过重新分析或者其他工作改进代码结构,并解决不稳定代码问题。
如果代码基础大体是稳定的,并有很强的自动化测试包,则程序员可以尝试以较低的风险做更大的变更。项目团队还可以通过调整产品的范围和发布时间,迅速抓住市场机会。
自动化冒烟测试:在有限的时间内,广泛的检验产品的功能。如果关键功能不能正常运行,或关键程序错误还没有被清除,测试小组就不必浪费时间安装或测试该版本了。解决这些问题对程序员来说也是同样紧急的事情。
自动化单元测试:这些测试也会使测试过程流畅、避免回退,并保持开发动力。这些测试有更大的测试集,针对的是被测产品功能中的下层功能和类。
自动化措施和冒烟测试的最大价值,在于可以由任何人在任何时候运行。作为开发过程的一部分,自动的运行这些测试。开发这样的测试有助于个体程序员创建一些只包含了一个或者少量变更的微版本。如果其中一个微版本失效,程序员会知道应该检查什么地方。如果微版本没有问题,会向程序员提供更大的版本,其中包含了所有程序员包含的所有的变更,这种版本出现问题的可能性也更低。这对于项目非常有好处。
自动化测试要做什么?能做什么?
*POS
功能回放测试 自定义脚本在真机回放; 详细的日志、截图、屏幕录像。
负载测试: 例如模拟几百上千人同事使用被测软件;
性能