0

WebアプリケーションにAngularJSを使用しています。チュートリアルに基づいてe2eルーティングシナリオのテストを行うには、browser()。navigateTo('../../ app / index.html')のようなことを行う必要があります。ただし、メインビューとしてcshtmlを使用しているため、サーバーからの直接の参照がブロックされています。したがって、browser()。navigateTo('../../ app / index.cshtml')のようなことはできません。

ブラウザで特定のファイルではなくアプリケーションルートに移動したいのですが。私はbrowser()。navigateTo('../../')のようなことをします。ただし、次のエラーが発生します。「TypeError:undefinedのメソッド'$browser'を呼び出せません」。index.cshtmlの「ng-app」が含まれていないためだと思います。これを解決する簡単な方法はありますか?

4

2 に答える 2

3

どのURLにもナビゲートできますが、ドメインポリシーが同じであるため、同じドメインにある必要があります(シナリオランナーはiframe内のアプリにアクセスする必要があります)。

これは、プロキシによって回避できます。または、アプリサーバーからシナリオランナー(runner.html)を提供することもできます。これは、さらに簡単なソリューションです。

シナリオランナーが$injectorを見つけることができるように、が必要ng-appです。手動でブートストラップを実行する場合でも、ng-app属性をアプリのルート要素に配置します。

于 2012-04-23T15:05:34.077 に答える
0

テストランナーをメインのテストサイトから離れた仮想ディレクトリに配置することを検討します。

于 2012-10-26T17:21:34.183 に答える