2012-02-15 34 views
0

我们正在使用Testng和RC。想知道一个常见/实用/通常使用的方式来确定哪些测试运行&不运行。想知道确定执行哪些测试以及要跳过哪些测试的常见做法?

转到场景 - 在一个测试套件中,我有3个模块 - A,B & C.在每个模块中,有5到6个测试。测试已经创建&运行良好。但随着我的测试会增加,我可能想要跳过模块中的一些测试。我只想运行A3,A5,B1,B2,C3,C4 & C5。我将如何实现这些设置? 我能想到的方法 -

  1. 应该从excel文件中完成这些设置(要运行的测试)。假设 工作表具有所有测试用例(仅标题)的列表&只有被标记为“是”的 应执行。
  2. 是否应该从testng.xml本身配置这些设置?如果是,那么如何?我知道我可以创建组&做到这一点。但是,这是怎么做的?

总体思路是不要触摸测试或玩注释错过测试。 如果1是答案,那么excel文件如何与Testng进行通信以告诉它要运行哪个测试&哪一个不能运行?或者如果有另一种方式(当然会有)实现这一目标。

请提供一些关于此问题的意见,如果有问题不清楚,请告知我。

问候 塔希尔

回答

0

你有看着使用组?

+0

是的,我知道我可以对测试进行分组,然后从testng.xml运行选定的组。这些组必须添加到我的测试方法或课程中。想知道这是其他人如何在我的情况下实施的。或者还有其他方法可以做到这一点。 – 2012-02-15 18:07:58

0

有多种方式来定义不同的执行列表:

  1. 作为Cedric recommended,定义适合您的旅行需求的执行和执行,你需要在时间组的特定组或收藏群体。
  2. 为每个执行需求创建不同的testng.xml文件。这个选项不应该被用来代替创建组,而是可以在你需要一些特定的测试/类/方法定义的配置时使用,比如每个<test>不同的特定监听器或一组属性。
  3. 你可以实现你自己的method interceptor。根据我的经验,如果您有很多遗留测试(尤其是现有注释),您不想(甚至不能)触摸,但仍需要做出决定的方式,这是一个很好的解决方案执行时的选择。
  4. 我应该提到running TestNG programmatically,因为它是一种可能的方法。不过,我并不是很熟悉这个,所以我不会推荐它。
相关问题