AngularJS中的场景测试

时间:2012-04-23 13:58:52

标签: javascript angularjs

我正在将AngularJS用于我的Web应用程序。要进行e2e路由场景测试,基于教程,我需要做一些像browser()。navigateTo('../../ app / index.html')。但是,我使用cshtml作为我的主视图,它被阻止直接服务器浏览。所以我不能做像浏览器那样的东西.waveTo('../../ app / index.cshtml')。

我希望浏览器导航到应用程序根目录而不是特定文件。我做的事情就像浏览器()。navigateTo('../../')。但是,我收到以下错误“TypeError:无法调用未定义的'$ browser'方法”。我认为这是因为index.cshtml中的“ng-app”不包括在内。有没有简单的方法来解决这个问题?

2 个答案:

答案 0 :(得分:3)

您可以浏览任何网址,但它必须位于同一个网域,因为相同的域策略(场景转换器需要访问iframe中的应用)。

这可以通过代理来解决。 或者您可以通过应用服务器为场景运行器(runner.html)提供服务,这可能是更简单的解决方案。

您需要ng-app,以便场景运行器可以找到$ injector,所以即使您进行手动引导,也要将ng-app属性放到应用的根元素上。

答案 1 :(得分:0)

我会考虑将测试运行器放在主测试站点的虚拟目录中。

相关问题