从grunt运行java文件,没有为Browserstack打开端口

时间:2013-10-17 07:30:09

标签: gruntjs browserstack

我正在使用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

知道是什么导致了这个或如何调试它?我想到了一个许可问题,但我有点无能为力

3 个答案:

答案 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进程保持活跃,并且子进程使用它。