Ben Salatalık testler içinde MockMvc kullanmayı deneyin ama hiçbir bahar bağımlılıkları çözülür.@RunWith (Cucumber.class) ve @Autowired MockMvc
@RunWith(Cucumber.class)
@CucumberOptions(format = "pretty", features = "src/test/resources/features"})
@SpringBootTest
public class CucumberTest {
}
salatalık özelliğini
çalıştırmak Ve adımları için bu sınıf:
@WebMvcTest(VersionController.class)
@AutoConfigureWebMvc
public class VersionControllerSteps {
@Autowired
private MockMvc mvc;
private MvcResult result;
@When("^the client calls /version$")
public void the_client_issues_GET_version() throws Throwable {
result = mvc.perform(get("/version")).andDo(print()).andReturn();
}
@Then("^the client receives status code of (\\d+)$")
public void the_client_receives_status_code_of(int statusCode) throws Throwable {
assertThat(result.getResponse().getStatus()).isEqualTo(statusCode);
}
@And("^the client receives server version (.+)$")
public void the_client_receives_server_version_body(String version) throws Throwable {
assertThat(result.getResponse().getContentAsString()).isEqualTo(version);
}
}
ama bu atış istisna:
java.lang.NullPointerException
at com.example.rest.VersionControllerSteps.the_client_issues_GET_version(VersionControllerSteps.java:30)
at ✽.When the client calls /version(version.feature:8)
Bu sınıf oluşturmak ettik
İşte .fe ature:
Feature: the version can be retrieved
As a api user
I want to know which api version is exposed
In order to be a good api user
Scenario: client makes call to GET /version
When the client calls /version
Then the client receives status code of 200
And the client receives server version 1.0
Testlerimi salatalık ve yaylı bot kullanmak için nasıl yapılandırabilirim?
Şimdiden teşekkürler.
ile döndürülen değeri işaretlemek gerekebilir? – Antonio