gpt4 book ai didi

java - TestNG 没有执行@BeforeMethod

转载 作者:行者123 更新时间:2023-11-29 05:06:56 27 4
gpt4 key购买 nike

我想对来自不同类的测试使用相同的@BeforeMethod 实例,但它不会工作

 package com.code.theCode

public class theConfiguration{

@BeforeMethod(groups = {"example"}, alwaysRun = true)
public void setupMethod(){
System.out.println("inside setupMethod");
}
}

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

 package com.code.test

public class theTest{

@Test(groups = {"example"}, alwaysRun = true)
public void setupMethod(){
System.out.println("inside test");
}
}

testng.xml

<suite name="AllTests" verbose="1">
<test name="AllTests">
<groups>
<run>
<include name="example">
</run>
</groups>
<packages>
<package name="com.code.*" />
</packages>
</test>

当运行我的测试时,我得到空白的系统输出

非常感谢任何帮助

最佳答案

创建一个抽象类,其中包括您的配置方法(您想用于更多@Tests 的方法)。之后使用创建的抽象类扩展您的测试类。例如:

public abstract class configurationClass {

@BeforeMethod
public void beforeMethod() {
System.out.println("beforeMethod");
}

}

public class testClass extends configurationClass {

@Test
public void test1() {
System.out.println("test1");
}

@Test
public void test2() {
System.out.println("test2");
}

}

当您运行测试类时,输出将是:

beforeMethod
test1
beforeMethod
test2

关于java - TestNG 没有执行@BeforeMethod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30105487/

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