java - 如何在 testng 工厂类中使用 spring Autowiring

标签 java spring testng

目前我有一个工厂类,如下所示:

        @ContextConfiguration(classes = BeanConfig.class)
        public class FactoryClass extends AbstractTestNGSpringContextTests {

            @Autowired
            public Bean bean;
            @Factory(dataProvider="dataProvider")
            public Object[] createTest(int a, int b) {
                return new Object[]{new FactoryTestClass(a, b)};
            }

            @DataProvider(name="dataProvider",parallel=true)
            public Object[][] passInts(){
                bean.method();
                return new Object[][]{{2,2},{2,3},{2,4},{2,4}};
            }

            @BeforeSuite
            public void beforeSuite(){
                System.out.println("before suite");
            }
        }

我的目标是使用 spring 的 Autowiring 功能,这样我就可以使用 bean 来帮助为数据提供者生成一些测试数据。然而,在我的尝试中,Spring 上下文从未初始化。有谁知道我可能做错了什么,或者我可以采取其他方法吗?

谢谢你, 杰森

最佳答案

我遇到了一些类似的问题:我的测试文件夹位于 main 目录之外,因此,在我将其标记为测试源资源(在 Intellij IDE 中)后,它开始工作。希望对您有所帮助。

关于java - 如何在 testng 工厂类中使用 spring Autowiring ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33575237/

相关文章:

java - Spring3/Hibernate断言失败

java - 如何使用 testng 和 selenium 参数化我的搜索测试

groovy - 我无法从geb.Page访问主页继承的静态内容

java - 在真实mysql系统中处理DELETE的最佳方法

java - 多次运行TestNG测试

java - spring的SecurityConfig可以拆分吗?

java - 是否有可能在 JodaTime 中将星期几作为仅具有星期几整数的字符串获取而不创建 DateTime 对象

java - 我需要能够在 eclipse 中找到行号和方法名称

Java - 从 Object 到 Map.Entry<String,String> 的未经检查的转换

java - Thymeleaf 循环并按每 n 个项目分组