2016-10-05 2 views
1

Я пытаюсь настроить тестовый проект, который использует безмятежность и JBehaveSerenity JBehave несколько браузеров

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

Я хотел бы структурировать тесты таким образом, чтобы тот же тест можно было выполнить в IE/firefox/chrome и т. д.

Как это сделать?

ответ

0

Свойства свойства передаются в свойствах командной строки, поэтому вы можете повторно запускать те же тесты с разными браузерами, передавая разные настройки для webdriver.driver, например.

$ mvn verify -Dwebdriver.driver=firefox 
$ mvn verify -Dwebdriver.driver=chrome 

т.д.

+0

Мне также нужен отдельный отчет, конечно, я не могу быть единственным, кто может протестировать приложение в нескольких браузерах? –

+0

Эта функция может поддерживаться в будущей версии Serenity. –

+0

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

0

Я думаю, что вы можете получить эту работу путем создания нескольких тестовых классов Junit с каждым своим собственным водителем и выполнять их все в один проход.

Каждый испытательный класс должен иметь возможность назначить определенный «управляемый» драйвер (например, PhantomJS, Chrome, Firefox). Это задокументировано здесь: http://www.thucydides.info/docs/serenity/#_serenity_webdriver_support_in_junit

Я не знаю, какое влияние это оказало бы на сгенерированный отчет, надеюсь, вы все еще можете определить комбинацию функций/драйверов.