Java 在运行组之前,不会执行TestNG@BeforeGroup

Java 在运行组之前,不会执行TestNG@BeforeGroup,java,selenium,testng,Java,Selenium,Testng,鉴于以下代码: public class NewTest { private Object _foreground = null; @BeforeGroups("regression") public void setUp() { System.out.println("executed? setUp"); _foreground = new MyObject(); } @Test(groups="regression

鉴于以下代码:

public class NewTest {

    private Object _foreground = null;

    @BeforeGroups("regression")
    public void setUp() {
        System.out.println("executed? setUp");
        _foreground = new MyObject();
    }

    @Test(groups="regression")
    public void testMyObjectToString() throws Exception {
        System.out.println("??? ");
        System.out.println(_foreground == null);
        String value = _foreground.toString();
        Assert.assertTrue(value != null);
    }
}
以及testNG.xml:

这意味着_foreground为null,这意味着不执行setUp方法。 TestNG还在以下行中显示java.lang.NullPointerException:

String value = _foreground.toString();

但是我不知道我错过了什么。在我看来,“回归”组将运行,@beforeGroup的安装方法将在testMyObjectToString和@Test之前运行。显然,这并不是正在发生的事情。

这是一个非常愚蠢的错误,可能是testNG新手犯的错误

@BeforeGroups("regression") 
这是一个错误的用法。。正确的用法应该是:

@BeforeGroups(groups = "regression")
花了我两天时间

@BeforeGroups("regression") 
@BeforeGroups(groups = "regression")