在serenity.properties文件中提及要使用哪个浏览器运行测试是否足够? 喜欢...
Chrome浏览器测试 webdriver.driver = chrome headless.mode = true
drivers.windows.webdriver.chrome.driver = src/test/resources/webdriver/windows/chromedriver.exe
drivers.mac.webdriver.chrome.driver = src/test/resources/webdriver/mac/chromedriver
drivers.linux.webdriver.chrome.driver = src/test/resources/webdriver/linux/chromedriver
Firefox Browser Testing
webdriver.driver=firefox
gecko.firefox.options = {"args": ["-headless"]}
drivers.mac.webdriver.gecko.driver = src/test/resources/webdriver/mac/geckodriver
drivers.linux.webdriver.firefox.driver = src/test/resources/webdriver/linux/geckodriver
并使用命令行调用测试,例如... mvn clean verify -DuserId ='xxx'-Dpasscode ='xxx'
或者也应该提及。.
``MVN干净验证-Dwebdriver.driver =浏览器-DuserId ='xxx'-Dpasscode ='xxx'
宁静会否仅从属性文件中推断出它? 因为当我在命令提示符下不提供任何浏览器并且仅在属性文件中提及Firefox时,它正在寻找ChromeDriver并失败,其路径已在属性文件中正确给出。 哪个选项优先或哪个优先? 我同意这些都是愚蠢的小问题!
答案 0 :(得分:0)
命令行将覆盖属性文件。
因此,如果您想从命令行中删除webdriver.driver
并将其移到可以正常使用的属性中,它将从属性文件中获取。
然后,您可以稍后使用命令行webdriver.driver
覆盖它。
我还要注意,几乎所有命令都可以移入宁静属性文件中。您还可以为需要运行的不同设置,设备和测试设置多个属性文件。
我为不同设备上的不同设置运行了15个不同的属性文件。然后,我要做的就是通过-Dproperties=properties/desktop.properties
还要注意一点,我的首选是将webdriver.driver
留在命令行中,这样可以更轻松地在具有不同浏览器设置的同一设备上运行相同的测试。然后,我创建简单的bash脚本来运行我的验收测试,冒烟测试,回归测试,并在从台式机到移动设备的几种不同设备上进行测试,然后在不同节点上的不同浏览器上进行测试。但是要各取所需。