Тестирование JUnit с имитацией пользовательского ввода

Я пытаюсь создать несколько тестов JUnit для метода, требующего ввода данных пользователем. Тестируемый метод выглядит примерно так:

public static int testUserInput() {
    Scanner keyboard = new Scanner(System.in);
    System.out.println("Give a number between 1 and 10");
    int input = keyboard.nextInt();

    while (input < 1 || input > 10) {
        System.out.println("Wrong number, try again.");
        input = keyboard.nextInt();
    }

    return input;
}

Есть ли способ автоматически передать программе int вместо меня или кого-то другого, делающего это вручную в тестовом методе JUnit?Нравится имитировать ввод данных пользователем?

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

72
задан Wimpey 20 June 2011 в 18:28
поделиться