Phwoaaa .... это не так красиво, как некоторые тесты могут быть. Upvoted tho, спасибо!
Я написал приложение PhoneBook на Java, основанное на командной строке. Приложение в основном запрашивает некоторые данные пользователя, такие как имя, возраст, адрес и номера телефонов, и сохраняет их в файле. Другие операции включают поиск телефонной книги по имени, номеру телефона и т. Д. Все детали вводятся через консоль.
Я пытаюсь написать контрольные примеры JUnit для каждой из функций, которые я реализовал, но не могу понять, как перенаправить
в коде реализации к чему-то в моих методах тестирования JUnit, которые будут предоставлять эти значения, когда мой фактический код останавливается для пользовательского ввода?System.in
Пример:
Мой код реализации имеет:
Надеюсь, это имеет смысл
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?
Вы можете найти пример кода, чтобы сделать то, что вы описываете здесь: