t.me/atinfo_chat Telegram группа по автоматизации тестирования

[Resolved] Ruby. RSpec. Передать параметры в командной строке.

Теги: #<Tag:0x00007f7487f46f20> #<Tag:0x00007f7487f46b10> #<Tag:0x00007f7487f469f8> #<Tag:0x00007f7487f46930> #<Tag:0x00007f7487f46660>

Добрый день!

В TestNG - Java есть очень удобная возможность передать параметры в тест (например, URL) из командной строки и обработать его в аннотации @Before.
Есть ли такая возможность в RSpec?
Вопрос актуален потому, что я хотел бы запускать тесты, написанные на Ruby на Jenkins. Осуществимо ли это технически?
Буду очень признателен за любую информацию.

Кажется, что независимо от языка можро считывать системные переменные и как то на них реагировать

Поддерживаю. sys.argv никто не отменял. можно написать свой декоратор для таких тестов, на крайний случай

Самый простой вариант - задать переменную окружения перед запуском rspec:

/your/project/root$ YOUR_ENV_VAR=some_value bundle exec rspec

И потом в где-то в Ruby-коде сделать как-то так:

YOUR_ENV_VAR = ENV['YOUR_ENV_VAR'] || 'default_value'
2 Симпатий

Большое спасибо за идею, именно так и сделал.