package.json中的链接脚本未正确执行

时间:2018-12-16 14:19:51

标签: protractor

我正在尝试使用package.json从命令行运行我的量角器测试。

我的package.json如下所示-

{
    "name": "ProtractorFramework",
    "dependencies": {
        "protractor": "^5.4.1"
    },

    "scripts": {    
    "webdriver-manager-update":"./node_modules/.bin/webdriver-manager update",
    "webdriver-manager-start":"./node_modules/.bin/webdriver-manager start",
    "protractor":"./node_modules/.bin/protractor configuration.js",
    "start":"npm run webdriver-manager-update && npm run webdriver-manager-start && npm run protractor"


}
}

当我执行以下命令时-

从Project目录

npm run start,Selenium Standalone服务器已启动,但最后一条命令未执行。这意味着浏览器没有打开。

要执行测试/打开浏览器,我被迫在另一个命令窗口中分别执行npm run protractor

我的package.json中是否存在无法同时执行所有三个命令的错误?

请帮助。

1 个答案:

答案 0 :(得分:2)

请牢记,您不能将selenium服务器启动命令和test execute命令链接在一起。

webdriver-manager start启动Selenium服务器,并将输出一堆信息日志。您的量角器测试将向该服务器发送请求以控制本地浏览器。保持该服务器运行。

运行webdriver-manager start时,硒服务器将在命令提示符下运行。如果您关闭此命令提示符,则硒服务器将退出。

相反,您可以创建一个脚本,该脚本将打开一个新的命令提示符并运行webdriver-manager start命令,如

  "scripts": {    
       ..... 
       "wdstart":"start cmd /k webdriver-manager start timeout 10 && npm run protractor"
        ......
       }