問題タブ [ngmocke2e]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angularjs - サーバー応答のモック
私はe2eテストが初めてです。分度器のテスト中に問題が発生しました。私の努力にもかかわらず、私の Web アプリケーションは API を呼び出します。
Web アプリケーションに正しい HTTP POST 応答を提供したいと考えています。しかし、私のコードは機能していません:
これが私のコードです:
そして私のリクエスト:
protractor - ngmocke2e の後続のテストがモック バックエンドの呼び出しに失敗した理由。最初のテストだけが合格します。2 番目のテストは実際のバックエンドを呼び出します
ngmocke2e のその後のテストでモック バックエンドの呼び出しに失敗したのはなぜですか? 最初のテストだけが合格します。2 番目のテストでは、実際のバックエンドを呼び出します。
これが私のサンプル コードです: 最初のテストはモックを呼び出します。2 番目は実際のバックエンドを呼び出します。
angularjs - 「addMockModule」を使用して、1 つのテストに複数のモック モジュールを追加する
次のパターンを使用して、分度器を使用してAngular Webサイトのいくつかのエンドポイントをモックしています:
これで問題なく動作しますが、すべて異なるデータを送信する複数のモジュールを持つことで、さらにモジュールを追加できるようにしたいと考えています。例:
このように、どのモックも機能していないようです。
また、セレンサーバー内で、両方のモジュールの名前が見つかっていることがわかります。
最初は問題があると思った
これを別のモジュールに追加して、他のすべてのモジュールが呼び出された後に呼び出すことを試みましたが、それでも機能しませんでした。何か案は?
json - 分度器テストで模擬オブジェクトを更新する
分度器テスト内で模擬呼び出しを更新するための良い解決策があるかどうか疑問に思っています。呼び出しをモックできるようにする必要があります (これは ngMockE2E を使用して実行できます) が、次に呼び出しが行われたときに、別の結果が返されるようにしたいと考えています。
whereresults
は返される json オブジェクトです。
初めて呼び出しが行われると、正しい json が返されます。しかし、同じテスト内で、次回呼び出しが行われたときに更新された json が返されるように、これらの結果を更新したいと考えています。
考え?
angularjs - ngMockE2E で HTTP リクエストをホワイトリストに登録する簡単な方法はありますか
いくつかのインフラストラクチャ (サーバーと VPN) の変更により、アプリケーションをオフラインモードで実行したい場合があります。私はngMockE2Eでこれを実装することができましたが、それは全か無かのアプローチのようです。つまり、アプリからすべての HTTP リクエストを明示的に設定する必要があります。
passThrough()
処理するルート/URLを明示的に設定しない限り、一般的な操作が自動的に呼び出されると想定する方法はありますか?
現在、私はこれをやっています:
この件に関して私が読んだほとんどすべては単体テストを扱っており、特に明記されていない限り、暗黙のパススルーには実際には対処していません。
asynchronous - AngularJS $httpBackend 非同期応答
バックエンドコードが作成されるまで、代替としてngMockE2Eを使用してAngularJS(1.3.8)アプリのバックエンドをモックしようとしています。
他のデータも照会する既存のサービスを使用していますが、それらは約束を返します。私は ngMockE2E が同期的であることを認識していますが、最初に非同期的に行う方法があるかどうかを確認したかったのです。
ウェブを見回してこれを見つけ、モッキング関連のコードを独自の個別のモジュールに入れて、このアプローチが機能するかどうかを確認しました。
$httpBackend.whenAsync() を実行しようとすると、リクエストは 404 のように見えます。同じリクエストを $httpBackend.whenGET() でチェックすると、リクエストしたデータを含む promise を受け取ります。
私は何を間違っていますか?
angularjs - セキュリティと ngMockE2E
分度器のテストがいくつかあり、Angular JS アプリで使用されるサードパーティ サービスへの呼び出しをモックしたいと考えています。
ngMockE2Eについて読みました。私の理解では、angular-mocks.js をページに追加する必要があります。
ページに angular-mocks.js を含めるベスト プラクティスは何ですか? ある種のプリプロセッサを使用して削除する必要がありますか、それとも本番環境で使用しても安全ですか?