Stiamo sviluppando un progetto con Java su Play Framework 2.x e alcuni endpoint di riposo. Inoltre abbiamo alcuni casi di test per loro come la seguente:Come simulare i controller/rest endpoint per il test dell'unità in Play Framework 2.x [Java]
@Test
public void testLogout() throws Exception {
FakeRequest request = new FakeRequest("GET", "/product/api/v1/logout");
Result result = route(request);
assertThat(status(result)).isEqualTo(OK);
assertThat(contentType(result)).isEqualTo("application/json");
assertThat(contentAsString(result)).contains("result");
}
D'altra parte, abbiamo alcuni metodi [come] register()
che non può testare nel database di produzione.
Qual è il modo corretto per verificare i metodi che influiscono sul database prod? Penso che sto deridendo ma non sono sicuro di ciò e non so come fare. Se il mocking è una buona scelta, c'è qualche esempio di lavoro?
Per favore, dammi qualche consiglio su questo problema.
hai controllato questi collegamenti? https://www.playframework.com/documentation/2.3.4/JavaTest e https://www.playframework.com/documentation/2.3.4/JavaFunctionalTest – sfat
[Pact JVM] (https://github.com/DiUS/pact-jvm) sembra abilitare ciò che vuoi fare, ma forse dovresti elaborare la tua domanda. È derivato da Pact for Ruby e "consente test sui contratti guidati dai consumatori, fornendo un servizio di simulazione e DSL per il progetto consumer e la riproduzione e la verifica dell'interazione per il progetto del fornitore di servizi". –
@sfat: ovviamente ho controllato quei link e ho un sacco di test. Ho solo bisogno di prendere in giro .. – OguzOzkeroglu