Я разрабатываю модульные тесты, которые могут много выиграть от повторного использования, когда дело доходит до создания тестовых данных.Однако есть разные вещи (вызовы API), которые мне нужно делать с одними и теми же тестовыми данными (аргументы API).
Мне интересно, возможна ли следующая идиома в Java.
Class RunTestScenarios {
void runScenarioOne (A a, B b, C c) {
........
}
void runScenarioTwo (A a, B b, C c) {
........
}
void runScenario (/* The scenario */ scenarioXXX) {
A a = createTestDataA();
B b = createTestDataB();
C c = createTestDataC();
scenarioXXX(a, b, c);
}
public static void main (String[] args) {
runScenario(runScenarioOne);
runScenario(runScenarioTwo);
}
}
По сути, я не хочу, чтобы что-то подобное повторялось повсюду:
A a = createTestDataA();
B b = createTestDataB();
C c = createTestDataC();
Насколько мне известно, такой псевдоним (scriptXXX) невозможенно я буду рад, если меня исправят, или если кто-нибудь может предложить возможные варианты дизайна для достижения этого эффекта.
Кстати, я знаю, что Command Pattern поможет это сделать.Но не то, что я ищу.
Спасибо, США