Похоже, это потому, что у вас есть оба тега для этого сценария, кажется, что ловушки before выполняются в зависимости от запущенного сценария. например,
- Командная строка тега --tags @Chrome и т. Д. Указывает, какой сценарий следует запустить
-Теперь на основе этого сценария выполните функции before с тегами, прикрепленными к этому сценарию (Test, Widgets, Smoke, Chrome, Firefox)
Если бы у вас был хук "До" для тега "Дым", я бы подумал, что он также будет работать.
Например:
(это в Скале)
Before("@test1") { _ =>
println("test1 before actioned")
}
Before("@test2") { _ =>
println("test2 before actioned")
}
С файлом функции:
[...]
@test1
Scenario: Test scenario 1
Given Some precondition occurs
@test2
Scenario: Test scenario 2
Given Some precondition occurs
Когда я запускаю любой из этих тегов, я получаю вывод
test1 before actioned
или test2 before actioned
Однако, если в одном сценарии есть оба тега, то печатаются обе строки.
Что действует в этих функциях setupChome, setupFirefox, просто настраивая драйвер? Вы можете создать новое системное свойство, такое как, например, browser
, сопоставить значение и выполнить некоторые настройки, после чего вы можете ввести:
-Dbrowser=chrome
и он будет выполнять настройку таким образом.