Codeception自动启动和自动关闭selenium服务器?

时间:2015-06-29 17:37:30

标签: selenium selenium-webdriver codeception

我正在使用Codeception,我想做Selenium测试。

显然,我需要运行Selenium服务器,我可以用它来启动它:

java -jar ./path/to/selenium/binary

但是,我过去使用过另一个测试框架,它允许我在配置文件中指定此路径。然后,每当我做codecept run之类的操作时,框架会自动启动selenium服务器,并在所有测试完成后将其关闭。

我可以使用Codeception执行此操作吗?我试图将exec()放在_bootstrap文件中,但它没有工作..

2 个答案:

答案 0 :(得分:1)

我正在使用phantomjs - 无头替代硒。 This extension codecept run自动启动phantomjs。幻影也比硒快。

您可以编写自己的extension来运行硒 - 请查看this file

答案 1 :(得分:0)

我用bash脚本开始测试,然后通过屏幕启动和停止selenium:

#!/usr/bin/env bash

# Start selenium in detached screen
screen -d -m -S "selenium" java -Dwebdriver.chrome.driver=./path/to/chromedriver  -jar ./path/to/selenium/binary || true

./vendor/bin/codecept run -c codeception.yml --fail-fast --coverage --steps --coverage-html --html || error=true

# quit selenium
screen -S selenium -X quit || true

这可能不适合用例,但我可以在Windows和Ubuntu上以及通过我的jenkins构建过程在bash中执行我的代码。