问题描述
我工作的一位客户要求使用使用 testng 编写的自定义测试框架,该框架允许使用 excel 文件处理不同的参数和测试迭代。
这个框架使用一个主类来处理所有的测试,我们称之为 TestManager。
这个TestManager定义了所有@Before和@After操作,并有一个名为exec()的方法,它被注释为@Test。
该方法用于调用测试所需的不同组件,这些组件是java类,实现了包含单个组件逻辑的单个方法exec()。
public class TestManager {
// ... Before,After methods
@Test(
dataProvider = "..."
)
public void exec(Parameter[] inParameter) {
// load parameters...
foreach component:
component.exec()
}
}
public class ComponentXYZ {
public void exec() {
// load input params
// Call a microservice and get results,find value on db,selenium operations...
// unload output params for next components
}
}
此框架旨在与 selenium 一起使用,或使用某些 http 请求库测试微服务,并包含在一个独立模块中。
所以我的项目有:
- Spring Boot 模块
- 一个测试模块(在我看来)应该依赖于 spring boot 模块
鉴于这种情况,您认为可以在使用此自定义框架的同时使用 WebMvcTest 执行集成测试吗?
我已经尝试了一段时间,但我总是遇到错误,或者我无法@Autowire mockmvc,我似乎无法直接从这个测试框架启动一个最小的 spring 启动实例......
我不认为运行我的 Spring Boot 应用程序并使用 http 调用微服务是正确的测试方法,但目前这是它唯一有效的方法。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)