Все,
Я написал приложение PhoneBook на Java, основанное на командной строке. Приложение в основном запрашивает некоторые детали пользователя, такие как имя, возраст, адрес и номера телефонов, и сохраняет их в файле. Другие операции включают поиск телефонной книги по имени, номеру телефона и т.д. Все детали вводятся через консоль.
Я пытаюсь написать тестовые примеры JUnit для каждой из реализованных функций, но не могу понять, как перенаправить System.in
в код реализации на что-то в моих методах тестирования JUnit, которые будут предоставлять эти значения, когда мои фактический код останавливается для ввода пользователем?
Пример:
Мой код реализации:
BufferedReader is = new BufferedReader (new InputStreamReader(System.in));
System.out.println("Please enter your name:");
String name = is.readLine(); // My test cases stop at this line. How can I pass command line values i.e. redirect System.in to my test based values?
Надеюсь, что это имеет смысл