如何在有限的时间内从自动化测试中获得最大价值?

时间:2014-10-07 09:20:01

标签: unit-testing testing automated-tests qa

我有一个相对较大的项目,到目前为止几乎没有自动测试。

现在管理层给了我们几个星期的时间来稳定产品,包括测试自动化。

为了获得这些X周的最大价值,我们可以花在自动测试上,我需要先了解要测试的类/方法。

除了下面列出的方法之外,我如何确定测试工作的优先级(决定,现在要测试哪个类/方法,以后测试)?

  1. 计算每个类的依赖项(有多少其他类使用类,包括传递依赖项)。应首先测试具有最多依赖类的类。
  2. 找出哪些类更改频率最高(根据版本控制系统)。频繁的更改可能是这些类中的大量错误或活跃开发的症状。在这两种情况下,为它们编写单元测试都是有意义的。
  3. 了解测试人员和/或客户的错误报告中涉及哪些类。

2 个答案:

答案 0 :(得分:1)

你所有的想法似乎都很好。 This article可以帮助您确定优先级和自动化程序。

这是如何进行估算测试工作的公式:

测试过程的方法(基于用例驱动的方法)。

Step 1 : count number of use cases (NUC) of system 

step 2 : Set Avg Time Test Cases(ATTC) as per test plan 

step 3 : Estimate total number of test cases (NTC) 

测试用例的总数 =用例数X每个用例的平均测试用例

Step 4 : Set Avg Execution Time (AET) per a test case (idelly 15 min depends on your system) 

Step 5 : Calculate Total Execution Time (TET) 

TET = Total number of test cases * AET 

Step 6 : Calculate Test Case Creation Time (TCCT)

通常我们将TET的1.5倍作为TCCT

TCCT = 1.5 * TET

Step 7 : Time for ReTest Case Execution (RTCE) this is for retesting

通常我们需要0.5倍的TET

RTCE = 0.5 * TET

Step 8 : Set Report generation Time (RGT

通常我们需要0.2倍的TET

RGT = 0.2 * TET

Step 9 : Set Test Environment Setup Time (TEST)

它还取决于测试计划

Step 10 : Total Estimation time = TET + TCCT+ RTCE + RGT + TEST + some buffer...;)

以下是示例的工作原理:

总用例数(NUC):227

每个用例的平均测试用例(AET):10

估计测试用例(NTC):227 * 10 = 2270

时间估计执行(TET):2270/4 = 567.5小时

创建测试用例的时间(TCCT):567.5 * 4/3 = 756.6小时

重新测试时间(RTCE):567.5 / 2 = 283.75小时

报告生成(RGT)= 100小时

测试环境设置时间(TEST)= 20小时。

总小时数1727.85 +缓冲区

4表示每小时执行的测试用例数

即执行每个测试用例需要15分钟

因为你要从头开始自动化

  

到目前为止几乎没有自动测试

我认为您不仅可以考虑利益,还可以考虑关于自动化测试的神话

  • 自动化无法取代人类

  • 自动化后,可以节省成本

  • 每个测试用例都可以自动化

  • 测试可以完全自动化

  • 一种测试工具适用于所有任务

  • 自动化测试并不意味着自动

    毕竟测试......这意味着计算机辅助测试

答案 1 :(得分:0)

除了上述答案之外,我想补充几点重新评估自动化的优先级和覆盖范围: 1.在开始任何编码之前,请了解所有测试用例可以为您提供最大覆盖范围,如完整流程或端到端测试方案。 2.始终保持自动化测试套件的可用性 - 就像首先编写那些可以一直使用的测试用例并且可以覆盖大部分回归部分而不是集中应用程序的特定功能。 3.当你在有限的时间内,尽量避免实施记录器,电子邮件摘要报告,HTML报告等奇特的东西...... 4.更好地拥有数据驱动的框架,而不是拥有关键字或混合框架,因为您可以通过在有限的时间内更改测试数据来涵盖许多测试用例。 5.维护excel表或csv测试数据,测试结果,你可以使用JXL Lib来处理java中的excel表。 6.阅读Excel工作表,编写Excel工作表是您可能希望在自动化代码中使用的最常用方法。您可以从博客中获取有关此内容的参考:http://testingmindzz.blogspot.in/