如何防止在TestNG组的拼写错误?(How to prevent spelling mistake

2019-11-03 10:31发布

我们刚开始使用TestNG的实现我们的测试。 现在,我们已经定义了四个组安排我们的测试(即A组,B族,C组和D组)。

是否有TestNG的可能性,以避免拼写错误,通过使用这些群体?

@Test(groups = {"GroupA", "GoupB"})    

我们建议怎么可能在“组B”(缺少R)上的拼写错误的开发者? 也有可能只允许组预定义的名称将确定。

一个想法是做定义代码模板,这可能包括通过TEMPLATE.XML到Eclipse。 但是,这似乎并没有被开发人员友好。

任何其他的想法,将不胜感激。

提前致谢。

Answer 1:

只需使用常数...

你可以有像常量专用类:

public class TestType {
    private static final String GROUP_A = "GroupA";
    private static final String GROUP_B = "GroupB"

    /**
     * Avoid instantiation
     */
    private TestType() {
    }
}

然后:

 @Test(groups = {TestType.GROUP_B, TestType.GROUP_A})    

这种精细为我们工作。 唯一的小问题(如果你正在使用Maven)是你必须有这样的类中的每个单独的项目或提取到一些常见的试验瓶中。 由于Maven的不允许默认共享的测试依赖。 (我知道posibility的有特殊的Maven插件补丁项目之间共享测试罐子,但不会再一次走这条道路。)

推进过程中的核心审查这些常量。

顺便说一句,就无缘测试应该拿出更低的测试覆盖率。



Answer 2:

使用IAnnotationTransformer inteface。 覆盖由在ITestAnnotation对象setGroups方法变换方法。 维护组的配置,XML,CSV或任何其他文件之外的某处。 这是我想的唯一途径。 由于@Test annonation可以通过IAnnotationTransformer不仅改变



文章来源: How to prevent spelling mistakes in TestNG groups?