我在 src / main / java 中有一个类,其中包含@Factory和@DataProvider批注
package com.qa.data
public class DemoFactoryAndDataProvider{
@Factory(dataProvider="dataProvider")
public Object[] setMyValue(String s){
return new Object[]{new testDemoFactoryAndDataProvider(s)};
}
@DataProvider(name="dataProvider")
public Object[][] dp() {
return new Object[][] {
new Object[] { "Test Data1"}
};
}
}
我在 src / test / java 中有一个测试类,它将测试上面的类
package com.qa.tests
public class testDemoFactoryAndDataProvider {
private String str;
public testDemoFactoryAndDataProvider(String st){
this.str = st;
}
@Test
public void testMethod() {
System.out.println("This is test method: " + str);
}
}
我的问题是,如果两个类都生活在不同的源文件夹中,那么如何确保@DataProvider和@Factory批注正常工作?
我有return new Object[ ] { new testDemoFactoryAndDataProvider(s) }
错误并抛出错误,因为未导入类DemoFactoryAndDataProvider.java,但我不应该将包从“ src / 测试 / java”导入到“ src / main / java”(反之亦然)。
不同的示例和视频在同一源文件夹中显示了这两个类,但是在我的情况下,我希望@DataProvider和@Factory位于与@Test不同的源文件夹中。
我希望这是有道理的。
谢谢。