Afa*_*mee 5 java eclipse testng selenium
嘿伙计们我的问题很简单直截了当.我有这种情况.
我在一个项目中进行了(Test-A)完全注释的testng测试.注意:此测试成功运行.然后我在另一个扩展的项目(Test-A)中进行了另一个testng测试(Test-B ).这个新的(Test-B)没有任何注释,因为它扩展了一个类.我的期望是,当你运行这个测试(Test-B)时,它应该在超类中运行测试用例,除了在其中定义的测试用例,这是面向对象的方式.问题是testng甚至没有将它识别为测试,因为其中没有注释.我猜testng注释处理不考虑超类的注释?
(注意,这里使用普通的旧 JUnit 4,而不是 TestNG)
如果父类位于同一项目中,Eclipse 似乎会在类层次结构中查找 @Test 注释。以下示例对我有用:
public class A {
@Test public void a() {
}
}
public class B extends A {
}
Run Code Online (Sandbox Code Playgroud)
当B作为 JUnit 测试运行时,它会执行a()并通过。
然后,我创建了两个 Eclipse 项目,测试 A 和测试 B。我将项目 B 链接到项目 A,并像您一样重复上述步骤,在项目 A 中使用类 A 等。现在,将类 B 作为单元测试运行会显示“不”发现 JUnit 测试。然后,@Test在B类中添加a就可以解决问题。
因此,我们可以推断Eclipse在寻找测试用例时并没有离开当前项目的边界。我认为您在班级中添加一个的解决方法@Test是合理的,尽管我不确定您为什么要这样做。
| 归档时间: |
|
| 查看次数: |
2728 次 |
| 最近记录: |