Wpis z mikrobloga

Lepiej pisać testy tak

@test
void whenEmailExist_ThrowException() {
assertException(() -> registration.register(registrationHelper.existEmail),
CredentialValidationException.class, "Email is already exist!.");
}

czy tak

@test
void whenEmailExist_ThrowException() {
// given
RegisterRequest request = registrationHelper.existEmail;

// when & then
assertException(() -> registration.register(request),
CredentialValidationException.class, "Email is already exist!.");
}

#java #naukaprogramowania
  • 11
@Kamishimi
lepiej tak:

@test
void whenEmailExist_ThrowException() {
// given
RegisterRequest request = registrationHelper.existEmail;

// when
Throwable result = catchThrowable((() -> registration.register(request))

//then
asserty z CredentialValidationException.class, "Email is already exist!.");

}
@Kamishimi: Jedyneczka. Przecież z opisową nazwą metody ten test czyta się w sekundę. Te given, when, then są równie przydatne jak komentarze typu "// Name" na zmiennej nazwanej "name".