我有使用spring-boot
的黄瓜,并且可以使用上下文和组件,但是@SpringBootApplication.main
没有运行,因此没有各种连接。有没有办法使黄瓜调用spring-boot
main
方法?这适用于上下文和组件,但不调用TheApplication.main
:
@SpringBootApplication
public class TheApplication {
... connect to stuff
和步骤文件:
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootApplication
@ContextConfiguration(classes = TheApplication.class, loader = SpringBootContextLoader.class)
@WebAppConfiguration
public class TestCreateSteps {
...
有些明智的重构解决了问题。将连接的东西移至需要连接并在测试中使用TimeUnit
的类,以等待其初始化。测试现在正在工作:
@SpringBootTest
@ContextConfiguration()
public class TestCreateSteps {
// Previously controlled by TheApplication
// AccountService now controls itself via application.properties
@Autowired
private AccountService accountService;
...
}