2012-10-10 87 views
2

用java和TestNG我有两个不同的类,test1.class和test2.class,而且包含了大部分的方法base.class两项测试:testNG测试类可以从另一个类扩展吗?

public class BaseTest { 

@Test 
public void step1() { 

} 

@Test(dependsOnMethods="step1") 
public void step2() { 

} 

@Test(dependsOnMethods="step3") 
public void step4() { 

} 
} 

public class Test1() extends BaseTest { 
@Test(dependsOnMethods="step2") 
public void step3() { 

} 
} 

然后我RUNT一个TestNG的测试上test1.class但不会工作,它说 “第4步取决于方法公共无效step3(),这是不是用@Test注释或不包括”

我想这是做错的方法,但我找不出更好的方法。任何帮助深表感谢。

回答

2

这似乎有点不直观。如果不了解测试中发生了什么,可能step3()实际上应该是在子类中实现的抽象方法,而不是注释测试。

这种方式step3()将始终运行,因为它从基类中调用并在子类中实现。

+0

工作作为一种魅力。我在basetest.class中添加了abstract public Step3(),并使用@test对其进行了注释。它工作得很好 – Joche

相关问题