Как получить доступ к stdout или stderr в интеграционном тесте Capybara - PullRequest
4 голосов
/ 23 февраля 2012

Я пытаюсь отладить некоторые интеграционные тесты Capybara и столкнулся с неожиданной проблемой. Когда я устанавливаю точку останова внутри теста Capybara, я могу проверять переменные, но я не могу вызвать puts или $stdout.puts или $stderr.puts. Чтобы понять, что я имею в виду, посмотрите на этот вывод:

(rdb:1) "foo"
"foo"
(rdb:1) puts "foo"
nil

Предположительно, это связано с тем, что Capybara захватывает как stderr, так и stdout как часть своей стандартной операции, чтобы сохранять спокойствие с драйверами селена и т.д. делает невозможным чтение длинных форматированных строк, таких как HTML.

Как получить ссылку на активный терминал для вывода чего-либо в целях отладки, используя IO#puts?

1 Ответ

0 голосов
/ 10 марта 2015

Вы взглянули на Capybara-cli, возможно, это поможет отладке таким образом.

https://github.com/vspy/capybara-console

...