gpt4 book ai didi

java - 一个测试类中存在的 @BeforeMethod 是否可以应用于另一个测试类中的方法?

转载 作者:行者123 更新时间:2023-11-30 02:12:07 26 4
gpt4 key购买 nike

我有两个不同的测试类:

public class Class A{

@BeforeMethod
public void beforeEachMethod(){
//}

@Test(groups = "Login")
public void testA(){
//}
}

@public class Class B{

@Test(dependsOnGroups = "Login")
public void methodB(){
//}

}

但是现在 @BeforeMethod 仅针对 A 类中的方法调用。即使 B 类中的方法成功运行,也不会为 B 类中的方法调用它。

我希望公共(public)类 A 中的 @BeforeMethod 也能被类 B 中的方法调用。

我希望 @BeforeMethod 仅出现在 A 类中,并且我还有其他几个类,如 B 类、C 类、D 类等。是否有可能为所有其他类调用一个 @BeforeMethod ?

最佳答案

方法beforeEachMethod()属于类A,因此只有在执行类A中的测试时才会运行。如果您希望它在每个测试之前运行,您可以使用该方法创建一个抽象基类,并让每个测试类继承它

public class TestCase {

@BeforeMethod
public void beforeEachMethod() {
}
}

public class A extends TestCase {

@Test(groups = "Login")
public void testA() {
}
}

public class B extends TestCase {

@Test(dependsOnGroups = "Login")
public void methodB() {
}
}

关于java - 一个测试类中存在的 @BeforeMethod 是否可以应用于另一个测试类中的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49744647/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com