春季启动黄瓜测试
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了春季启动黄瓜测试相关的知识,希望对你有一定的参考价值。
我尝试执行一些Spring启动应用程序的Cucumber测试。
在测试运行之前,似乎没有启动Spring Boot。
我错过了什么?
答案
我的Cucumber回购仍然没有完成上述所有步骤:
https://github.com/BarathArivazhagan/Cucumber-spring-integration
文件:https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-testing.html
要添加更多:
@SpringBootTest
负责加载应用程序上下文,在这种情况下@ContextConfiguration
是还原剂。- Spring测试自动提供了一个可以自动装配的
TestRestTemplate
bean,但它仍然可以与RestTemplate一起使用。 - 它仍然在没有
RANDOM_PORT
的情况下运行,但RANDOM端口也可以结合使用进行测试。
另一答案
假设你在feature1
中有一个特征文件,glueCode
和org.xyz.feature1
@RunWith(Cucumber.class)
@CucumberOptions(
plugin = {"pretty"},
features = "src/test/java/resources/feature/feature1",
glue = {"org.xyz.feature1"})
public class CucumberTest {
}
@RunWith(SpringRunner.class)
@SpringBootTest(classes = {Application.class},
webEnvironment = WebEnvironment.RANDOM_PORT)
@ContextConfiguration
@Ignore
@Transactional
public class FeatureTest extends CucumberTest {
@LocalServerPort
int randomServerPort;
@Given("........")
public void test_1 {
}
}
另一答案
我发现了问题,并更新了回购。
我做了以下工作让它工作:
- 将
RANDOM_PORT
添加到@SpringBootTest
- 添加了
@ContextConfiguration
- 从
RestTemplate
切换到TestRestTemplate
以上是关于春季启动黄瓜测试的主要内容,如果未能解决你的问题,请参考以下文章