Я хочу провести интеграционные тесты с http-сервером. Пока что у меня есть только опыт использования junit для модульного тестирования.
У меня есть два требования: у фреймворка должен быть плагин maven, а код тестовых примеров должен быть чистым, поэтому никаких грязных хаков и шаблонного кода.
Обычный JUnit хорош для модульных тестов, методы @Test индивидуальны. Но для интеграционного тестирования мне нужно обработать несколько зависимых шагов, которые должны поменять какое-то состояние (переменные).
Я уже прочитал:
Можем ли мы использовать JUNIT для автоматического тестирования интеграции? и Передача данных JUnit между тестами и пришли к выводу, что мне не нравятся статические поля в модульном тесте, и я не я не хочу использовать TestNG и добавлять аннотации зависимостей к тестам, и я не хочу помещать свой тест в один длинный нечитаемый метод тестирования.
Я хотел бы узнать больше о синтаксисе, таком как:
public class MyIntegrationTest() {
@Step
public void testCreate(Context context) {context.put("foo");}
@Step
public void testUpdate(Context context) {context.get();}
@Step
public void testDelete(Context context) {context.get()}
}
Итак, я хочу улучшить / использовать модуль таким образом, чтобы он выполнял методы @Step с экземпляром контекста в качестве аргумента. Методы должны вызываться средой по порядку и не могут вызываться по отдельности. В идеальном мире все? Подразделение отображало бы @Step как @Test, но это необязательно ...
Любые советы, как это сделать?
Jan