我正在使用Codeception,我想做Selenium测试。
显然,我需要运行Selenium服务器,我可以用它来启动它:
java -jar ./path/to/selenium/binary
但是,我过去使用过另一个测试框架,它允许我在配置文件中指定此路径。然后,每当我做codecept run
之类的操作时,框架会自动启动selenium服务器,并在所有测试完成后将其关闭。
我可以使用Codeception执行此操作吗?我试图将exec()
放在_bootstrap文件中,但它没有工作..
答案 0 :(得分:1)
我正在使用phantomjs - 无头替代硒。 This extension codecept run
自动启动phantomjs。幻影也比硒快。
答案 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中执行我的代码。