Hej, chciałbym nauczyć się pisać testy.
W następnym tygodniu spróbuję dorwać tę książkę "TDD : programowanie w Javie sterowane testami" / Viktor Farcic, Alex Garcia - swoją drogą jakieś opinie o niej ? Może lepiej zabrać się za inną lekturę ?
Ale.. do tego czasu chciałbym już coś popisać, ponieważ dużo łatwiej przyswaja mi się wiedzę w kolejności [praktyka -> teoria].
Szukałem czegoś na necie i przeklepałem kod z małymi zmianami:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = Application.class)
@SpringBootTest
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class AbcControllerTest() {
private MockMvc mockMvc;
@Autowired
private WebApplicationContext wac;
@Before
public void setup() {
this.mockMvc = MockMvcBuilders.webAppContextSetup(wac).build();
}
@Test
public void readAllAbc() throws Exception {
mockMvc.perform(MockMvcRequestBuilders
.get("/abc")
.accept(MediaType.APPLICATION_JSON_UTF8))
.andExpect(jsonPath("$", hasSize(10)))
.andExpect(status().isOk())
.andDo(print());
}
}
I... testy przechodzą ale wpływają na moją bazę danych tzn. jak testuję usuwanie, to usuwa mi dane z bazy. Tak powinno wyglądać testowanie :O ?