【发布时间】:2014-08-04 04:13:56
【问题描述】:
操作系统:Windows 7
我目前正在尝试为带有 grunt 的 angularjs 应用程序设置自动化测试过程。
这一直很顺利,直到我遇到了一个障碍,虽然不会阻止进展,但真的很烦人,我想解决它。
我所拥有的繁琐依赖:
"grunt": "^0.4.5",
"grunt-contrib-connect": "^0.8.0",
"protractor": "^0.24.1",
"grunt-protractor-webdriver": "^0.1.8",
"grunt-protractor-runner": "^1.0.0",
"cucumber": "^0.4.0",
"chai": "^1.9.1",
"chai-as-promised": "^4.1.1",
我最初从一个使用 jasmine 的简单量角器配置文件和使用以下堆栈的相关规范文件开始:
connect
protractor_webdriver
protractor
这工作正常,网络服务器在请求的端口上启动,Selenium 服务器启动,然后 Chrome 启动,测试通过,Chrome 关闭,grunt 进程完成。如有必要,我可以立即重新运行命令而没有问题
我继续创建另一个量角器配置文件,但这次使用黄瓜代替。相关功能和步骤文件已创建,我将“量角器”任务改为指向此文件。一切都像以前一样运行正常并且测试通过了,但是 Chrome 浏览器已关闭,尽管 Grunt 似乎退出并显示了一个新的命令提示符,但我无法使用向上箭头访问以前的命令,如果我输入了一个新命令,这只是挂起并且不做任何事情。解决这个问题的唯一方法是 CTRL + C 两次,它会返回另一个命令提示符,然后它会按预期运行。
编辑:如果我取出“protractor_webdriver”任务并让 Selenium 服务器单独运行,那么我不会收到命令提示符问题,但是 Chrome 仍然没有关闭(我不希望这是一个解决方案,尽管我希望一切都是独立的)。
有没有人经历过这种情况或有什么想法?
提前致谢。
附:这两者都存在问题,ChromeDriver 作为一个进程运行,但认为这是不相关的(尽管解决这个问题也是可取的)。
【问题讨论】:
标签: selenium webdriver cucumber gruntjs protractor