2015-09-29 4 views
1

Я пытаюсь запустить мини-набор на лабораторные сосиски для каждого драйвера, который мне нужен.Запуск рубина (класс) более одного раза

У меня есть класс, который выглядит примерно так:

class test_suite 
    class test < MiniTest::Test 

    def setup 
     setup stuff 
    end 

    #test suite 
    def test_1 
    end 
    def test_2 
    end 

    def teardown 
    end 
end 
end 

Вопрос заключается в том, когда я запускаю тесты с определенным водителем они работают отлично, но когда я пытаюсь запустить тесты дважды, переключая драйвер между бежит тесты выполняются только на последнем драйвере.

Например, у меня есть

CHROME45 = Selenium::WebDriver::Remote::Capabilities.chrome 
CHROME45['version'] = "45.0" 
CHROME45['platform'] = 'Windows 7' 

и драйвер Firefox, который похож. Я хочу, чтобы запустить тесты и вызвать класс тест два раза, так что пробеги будет выглядеть следующим образом (не фактический объем производства):

person:tests$ ruby Test_Runner.rb "test.rb" 
Started with run options --seed 22245 

ChromeDriver 
Test_Suite::Test 
test1..etc           PASS  (16.44s) 

FireFoxDriver 
Test_Suite::Test 
test1..etc           PASS  (16.44s) 

Finished in 16.44553s 
2 tests, 6 assertions, 0 failures, 0 errors, 0 skips 

Подводя итог. Я хочу запустить набор тестов один раз для каждого драйвера selenium/sauce, который я создаю для тестирования, без изменения драйвера вручную между запусками.

ответ

1

Почему бы не запустить их параллельно, чтобы вы могли запускать каждый тест драйвера независимо от контекста того, был ли запущен другой тест драйвера? Возможно, используйте что-то вроде https://github.com/grosser/parallel_tests.

+0

Я попытался использовать parallel_tests. Мне жаль, что мой мозг сейчас пустяк из всех проб и ошибок и googling, которые я делал весь день. Должно быть, я сделал что-то не так. Нужно ли использовать набор тестов на основе рейка? Есть ли способ подключить это к minitest? Я пробовал параметр распараллеливания, доступный в minitest, но я читал, что некоторые интерпретаторы Ruby этого не допускают. У меня есть мозги из моего мозга сегодня, я завтра еще раз ударю, но если у вас есть дополнительная информация или пример, вы можете связать меня с этим, будем очень благодарны. – erics12512354

Смежные вопросы