经过大量的故障排除后,我终于得到了selenium,但它只是启动服务器并坐在上面。任何人都知道如何让它运行测试并退出?
[Step 9/9] Executing /home/ubuntu/buildAgent/work/d653d615082dd19f/node_modules/.bin/grunt via wrapping shell script
[16:47:57][Step 9/9] Starting: /home/ubuntu/buildAgent/temp/agentTmp/wrapper3464043714269626324.sh --no-color --teamcity.properties.all=/home/ubuntu/buildAgent/temp/agentTmp/teamcity7605733587545998535.json --teamcity.properties=/home/ubuntu/buildAgent/temp/agentTmp/teamcity414610972945921232.json protractor
[16:47:57][Step 9/9] in directory: /home/ubuntu/buildAgent/work/d653d615082dd19f
[16:48:01][Step 9/9] Running "protractor:myApp" (protractor) task
[16:48:01][Step 9/9] Starting selenium standalone server...
[16:48:01][Step 9/9] [launcher] Running 1 instances of WebDriver
[16:48:02][Step 9/9] Selenium standalone server started at http://172.30.0.51:40590/wd/hub
答案 0 :(得分:0)
Selenium是一项服务,它“启动并运行”:)这是Selenium以及任何其他服务的目的。
如果你想运行运行他们自己的Selenium服务的Protractor测试,那么你应该设置Selenium jar并且不要设置Selenium地址。
export.config = {
// Excerpt of protractor.conf.js
seleniumServerJar: 'node_modules/protractor/selenium/selenium-server-standalone-2.45.0.jar',
// Comment out seleniumAddress
// seleniumAddress: 'http://localhost:4444'
};
答案 1 :(得分:0)
FYI人。我有相同的用例,我需要在执行所有测试后关闭selenium进程。
我写了一个简单的 power shell 脚本,这是我最后使用的。
# Check if chrome driver is already running.
$java = Get-Process java*
Write-Host $java
if ($java) {
$java | Stop-Process -Force
}
这显然不是我能写的最好的剧本但是它完成了这项工作。您可以使用进程资源管理器查找selenium在Java进程线程上运行,因此,它是您必须杀死的那个。
这个小脚本现在是构建过程的一部分。