执行计划中的测试可靠性

问题

在持续集成环境中,最理想的测试方式是每天至少对每日内部版本执行一次测试,确保所测试应用程序的质量。为了解您的测试集在度量 AUT 质量方面的可靠程度,有时必须要查看结果随着时间推移而变化的情况。例如,您的测试集中可能存在状态频繁更改的测试,因此不具备真正的质量测量。

解决方案

使用数据集市视图 RV_TestStatusExtended创建报告,列出特定执行计划上下文中特定测试的结果。这允许您查看该测试的结果随着时间推移而变化的情况。为方便起见,我们将结果列表缩小至与带标记的内部版本相关的结果,因而可以仅查看所测试应用程序的特定里程碑内部版本。此报告将在执行计划和内部版本的上下文中收集各个测试的测试结果数据。在以下查询中:

  • 选择要从视图中显示的列。
  • 按照希望调查的测试的 ID 以及该测试所属执行计划的 ID 缩小结果范围。
  • 添加约束,以仅考虑带标记的内部版本。
SELECT TestName, ExecutionPlanName, VersionName, BuildName, TestRunID, 
  PassedCount, FailedCount, NotExecutedCount
FROM RV_TestStatusExtended
WHERE TestID = ${TESTID|1|Test ID} AND ExecutionPlanID = ${EXECUTIONPLANID|1|Execution Plan ID} AND BuildIsTagged = 1
ORDER BY BuildOrderNumber
SQL 查询的结果将得到选定执行计划内选定测试的所有测试运行。在以下示例中,可以看到对内部版本 579_Drop2 重新运行了测试:
TestName Execution PlanName Version Name BuildName TestRunID Passed Count FailedCount NotExecutedCount
UI Tests EN|SQL2012|IE9|IIS 3.0 579_Drop02 7741797 59 5 0
UI Tests EN|SQL2012|IE9|IIS 3.0 579_Drop02 7745078 63 1 0
UI Tests EN|SQL2012|IE9|IIS 3.0 593_Drop03 7787437 63 1 0
UI Tests EN|SQL2012|IE9|IIS 3.0 605_Drop04 7848720 63 1 0