testng: Can't use both groups and dataprovider at the same time

When I use dataprovider, it works fine, When I add a groups member, it all the sudden can’t find the dataprovider. Any idea what’s going wrong?

Header:

 @Test(dataProvider = "provide", groups = { "smoke" })
    public void testAllSidebarLinksExist(String item, Data.ItemTypes types)

Working XML:

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="SmokeTests" verbose="1" >
    <test name="CheckLinks">
        <classes>
            <class name="com.me.Content.ContentTests" />
        </classes>
    </test>
</suite>

Non-working XML:

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="SmokeTests" verbose="1" >
    <groups>
        <run>
            <include name="smoke"/>
        </run>
    </groups>
    <test name="CheckLinks">
        <classes>
            <class name="com.me.Content.ContentTests" />
        </classes>
    </test>
</suite>

Dump:

java.lang.NullPointerException

org.testng.internal.MethodInvocationHelper.invokeDataProvider(MethodInvocationHelper.java:143) 
at org.testng.internal.Parameters.handleParameters(Parameters.java:426) 
at org.testng.internal.Invoker.handleParameters(Invoker.java:1383) 
at org.testng.internal.Invoker.createParameters(Invoker.java:1075) 
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1180) 
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127) 
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111) 
at org.testng.TestRunner.privateRun(TestRunner.java:767) 
at org.testng.TestRunner.run(TestRunner.java:617) 

About this issue

  • Original URL
  • State: closed
  • Created 11 years ago
  • Comments: 16 (4 by maintainers)

Most upvoted comments

Make sure your configuration methods belong to that group (or specify alwaysRun=true).

Cédric