2016-08-13 101 views
1

我用angular2-webpack-starter创建了我的应用程序,我用它socket.io。我创建了一个公共服务来创建套接字连接并聆听它的方法。该服务的使用和初始化在用户登录后,当应用程序正在运行,并且我执行测试用例进行登录,我检查的网址与下面的代码:Angular2 e2e量角器抛出错误的测试案例

browser.getCurrentUrl().then((url) => { 
    expect(url).toEqual('/dashboard');  
}); 

的问题是,当套接字连接的投掷的错误“超时15秒后等待量角器与页面同步,并且如果套接字未连接,则相同的测试例运行时没有任何错误。

+0

您是否试过'expect(browser.driver.getCurrentUrl())。toEqual('/ dashboard');'? – alecxe

+0

这是错误不仅是'browser.getCurrentUrl()',但这个错误即将发生在我所有的测试用例中,也是我对不同的选择器使用了一些不同的'expect'条件。所有测试用例都在套接字未实现之前工作,但是在添加套接字后,它停止工作。 – ranakrunal9

+0

我敢打赌,你在测试和量角器控制流程中实现套接字的方式有些不同步。你介意用相关的测试代码更新你的文章吗? – martin770

回答

1

我不知道,如果连接到插座实际上是使事情需要更长的时间或没有,但如果15秒不够的时候,你可以改变你的量角器配置文件 allScriptsTimeout:timeout_in_millis

protractor timeouts

+0

我已经尝试过,但没有奏效。我认为是问题是因为在连接到服务器完成之后套接字连接保持打开状态,量角器正在等待通过关闭连接来完成该过程。 – ranakrunal9

+0

我看到同样的问题,我同意你的看法,它必须是websocket。我们正在打开一个websocket,并等待着一个可观察的。 –

相关问题