Тестовые примеры JUnit для метода, который может включать вызов других методов

Я новичок в Junit. Я использую JUnit 3.8. Моя проблема в том, что методы моего приложения включают операции с базой данных (вставка, обновление, удаление...), а также один метод может вызывать ряд других методов. Я жестко кодирую входные значения в тестовых примерах. Итак, в первый раз тестовый пример, например, вставка записи, проходит. Во второй раз он терпит неудачу. Выдает исключение, что запись уже существует.

Как написать тестовый пример junit для таких методов (включая операции с базой данных)? Как написать тестовый пример для методов, включающих вызов других методов?

Помогите мне, пожалуйста...

Заранее спасибо.


person Rashmi    schedule 06.05.2010    source источник


Ответы (2)


Вам следует тщательно изучить DBUnit в сочетании с базами данных. И вам следует обновиться до более новой версии JUnit 4.8.1, насколько я знаю.

person khmarbaise    schedule 06.05.2010
comment
Но в более новых версиях используются аннотации. Я не знаю аннотаций, поэтому я пытаюсь использовать junit3.8. - person Rashmi; 06.05.2010

Что вы пытаетесь протестировать? Если вы пишете модульные тесты, то, если вы не тестируете фактическую логику уровня БД, вы хотите исключить базу данных из уравнения. В идеале вы сделаете это, заменив свой слой базы данных mocks/stubs/fakes.

Если вы действительно хотите протестировать свой уровень базы данных, взгляните на dbUnit, который может настроить вашу базу данных в известное состояние и затем снова очистить ее.

person tddmonkey    schedule 18.12.2010