拓展测试领域,不要不断重复相同的测试
利用自动化拓展测试领域,使测试员能够看到更多、做到更多。
离开自动化简直就不能完成某些测试,而另外一些自动化测试则会大大扩展测试范围。以下是几个例子。
负载测试。200 人同时还用被测软件会出现什么情况?2000 人呢?需要自动化来模拟这些场景。
性能基准测试。系统的性能是越来越好还是越来越差?测试员可以通过自动化测试,在每次运行时都捕获时间度量参数。通过收集这些度量参数,并按时间顺序观察,就会发现性能退化现象。资源利用基准,例如内存或外存的使用,也可以通过同样的方法获得。
配置测试。软件常常必须在不同的平台、不同配置上运行,挂接不同的外部设备。怎样才能测试所有情况?自动化测试有助于提高覆盖率。为了做到这一点,必须保证测试是可跨平台移植的。
耐力测试。被测产品使用几周或几个月会出现什么情况?出现内存泄漏、栈破坏、指针越界和类似的错误时肯呢个不太明显,但是最终会带来麻烦。一种策略是中间不重新设置系统地长时间运行一系列测试用例,例如几天或几周。这要求测试自动化。
竞争条件。有些问题只有在一定顺序条件下才会发生。竞争同一资源的两个线程或进程的时序重叠,可能会产生叫做竞争条件的错误。这些问题常常很难发现,也很难重现。自动化测试会提供很大帮助,因为测试员可以利用很多略不同的时序关系,反复进行测试。
组合错误。有些错误涉及多个功能之间的交互。可将大量复合测试自动化,每个复合测试都以不同方式使用多种功能。
这些方法都是集中利用自动手段创建新的测试,或以旨在发现新程序错误的方式重复产品的使用。这些测试的视线都不那么简单。测试人员必须通过自动化测试的不同部分,并开发辅助工具,逐渐实现。但是,我们认为这常常是自动化测试努力的更好目标,而不只是简单地一遍又一遍地重复相同的功能测试。
搜索微信公众号:TestingStudio 霍格沃兹的干货都很硬核
评论