我正在使用grunt插件BrowserStackTunnel.jar
grunt-exec
(一直使用node的child_process.exec,但结果相同)
使用命令java -jar BrowserStackTunnel.jar -force APIKEY localhost,8000,false
Java文件实际上做的是通过ssh连接到Browserstack的Amazon实例并在45691上打开一个端口,browserstack的网站在localhost上轮询该端口,其中Java应用程序提供包含传递的params的小片段。 / p>
如果我从CLI运行命令它工作正常,我看到端口在netstat上打开。在browserstack网站上,我获得了成功屏幕。
但是如果我从grunt-exec运行命令,它只显示SYN
请求。
命令行的输出是相同的,都显示成功
我不太确定导致这种情况的原因。我在windows7上运行,节点v0.10.12,grunt-cli v0.1.9,grunt v0.4.1和grunt exec v0.4.2
知道是什么导致了这个或如何调试它?我想到了一个许可问题,但我有点无能为力
答案 0 :(得分:1)
您是否尝试过使用Browserstack Chrome Plugin?它于今年1月推出,允许您在不运行cli隧道的情况下测试本地文件。
答案 1 :(得分:1)
我遇到了同样的问题,我意识到,如果我使用BrowserStackLocal二进制文件来创建一个tunel,那就更好了。我在这里解决了一个非常复杂的配置:Ember.js - CircleCI - BrowserStack
BrowserStackLocal文件位于:http://www.browserstack.com/local-testing(二进制文件)
答案 2 :(得分:-2)
创建子进程后,grunt将继续执行下一个命令。如果什么都没有,那么grunt进程就会终止并带走孩子。
尝试在grunt-exec调用之后添加grunt-contrib-watch任务。它应该使grunt进程保持活跃,并且子进程使用它。