Напишите интеграционные тесты для Go CLI, задавая серии вопросов / ответов для Windows - PullRequest
0 голосов
/ 18 декабря 2018

У меня есть приложение командной строки для окон (которое задает ряд вопросов через командную строку), разработанное в Голанге, и я хотел бы написать интеграционные тесты для этого приложения.Я посмотрел на https://github.com/zetamatta/expect. Он может имитировать вывод для каждого задаваемого вопроса.Пример:

expect("Enter installer name")
send("xxx\r")
expect("Execute it?")
send("y\r")
..
..
..

Приложение golang выполняет некоторую обработку на основе различных заданных вопросов и ответов на них.Он действительно устанавливает некоторые вещи.Если бы я должен был написать интеграционные тесты, используя этот пакет, как он показывает, был ли это проход или неудача?

Мой скрипт lua выглядит так:

echo(true)
if spawn([[C:\test.exe]]) then
    expect("Enter installer name?")
    echo(true)
    send("xxx\r")
    expect("Install it?")
    send("y\r")
    expect("~]$")
    echo(true)
    send("exit\r")
end

Я выполняю как:

expect.exe sample.lua

Работает нормально и автоматически принимает вышеуказанные входные данные для вопросов, не вводя их вручную.Однако, в конце, как мне организовать это как тест, чтобы показать, что все прошло успешно или не удалось.В конце концов мне потребуется написать несколько таких тестов для всех возможных и негативных сценариев.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...