#java #junit
#java #junit
Вопрос:
Я пытаюсь выполнить тестовый пример для метода передачи между учетными записями, но он выдает ошибку:
@Before
public void setup() throws Exception {
origin = new Account();
origin.setBalance(50);
destiny = new Account();
destiny.setBalance(0);
@Test
public void transferring_test() throws Exception {
Assertions.assertTrue(origin.getTransferring(),destiny,50);
Assertions.assertEquals(0, origin.getBalance());
Assertions.assertEquals(50,destiny.getBalance());
}
Здесь ошибка обвинения:
Assertions.assertTrue(origin.getTransferring(),destiny,50);
Я хочу, чтобы методы assertEquals проверяли, была ли списана сумма исходного счета и зачислена сумма целевого счета.
public void transferring(Account destiny, double value) {
accountRepository.valueBalance(value);
destiny.setDeposit(value);
}
Комментарии:
1. В чем ошибка? Где находится вызов для выполнения передачи? Нам понадобится больше деталей (кода), чтобы помочь.
2. Я обновил вопрос.
Ответ №1:
Похоже, вы неправильно вызываете transferring
метод. На нем нечего утверждать — вы должны просто вызвать его, а затем подтвердить состояния двух учетных записей:
@Test
public void transferring_test() throws Exception {
origin.transferring(destiny, 50); // Here!
Assertions.assertEquals(0, origin.getBalance());
Assertions.assertEquals(50, destiny.getBalance());
}
Комментарии:
1. В итоге я не упомянул об этом, но я вызываю службу. Здесь это сработало, большое вам спасибо!