問題タブ [angular2-testing]
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.
angular - angular2 RC5でこのサービスをテストするには?
私は現在angular2 RC5を学んでいます。angular2 RC5 で次のサービスをテストしたいのですが、どうにか構成できません。
このサービスのすべてのメソッドをテストしたいのですが、入力はありますか?
angular - Angular2 で MockBackend を使用して HTTP の投稿、挿入、削除の単体テストを行う方法は?
そのため、angular2 コンポーネントとサービスをテストしています。
これまでのところ、以下のようにサービス内の get リクエストをモックするために mockBackend を使用しました。
私のservice.tsを見たい場合は、以下のようになります:
上記のサービスから、正常に動作しているため、service.spec.ts ファイルに getAllPages() & getPageById() メソッドを正しく実装しました。
メソッドのテストケースの実装方法を知りたいですsavePage() , updatePage() , deletePage()
。
入力はありますか?
前もって感謝します。
angularjs - addProvider は RC6 で非推奨になっているため、angular2 jasmine テスト仕様にプロバイダーを追加するにはどうすればよいですか?
beforeEach
すべてit
が必要なモジュール/プロバイダーを取得できるように、次のように記述しようとしています:
しかし、addProviders
メソッドは RC6 で非推奨になっているため、プロバイダーを追加するためのより良い代替手段は何ですか?
angular - ngOnInit での Angular 2 RC5 テストの約束が機能しない
Jasmine で MyDirective という名前の構造ディレクティブをテストしようとしています。使用される Angular のバージョンは RC5 です。
getData メソッドは MockService クラスで上書きされますが、データの有効性をチェックする isValid メソッド (MyService の静的メソッド) は直接呼び出されます。
2 つ目it
は、span 要素が DOM にあるケースを作成することになっていますが、そうではありません。次のような if ステートメントの最初の条件に当てはまるかどうかを確認しました。
そして、ログに記録します。したがって、要素をDOMに保持する必要がありますが、テストする方法が見つかりません。
angular - Angular2 - templateUrl を使用してコンポーネントをテストすると、「未処理の Promise 拒否」が発生します
現在、テンプレートが templateUrl で参照されている Angular 2 コンポーネントをテストする簡単なテストを作成しています。現在、テストを含む必要なタスクを実行するために webpack を使用しています。angular サイトのwebpack ガイドと AngularClass のangular2-webpack-starter repo に従っていました。
ただし、テストがコンポーネント フィクスチャを作成しようとすると、
次のエラーが表示されます。
"'未処理の Promise 拒否:'、'app.component.html の読み込みに失敗しました'、'; ゾーン:'、'ProxyZone'、'; タスク:'、'Promise.then'、'; 値:'、'失敗しましたapp.component.html をロード',"
したがって、明らかにテストが失敗します。
私の app.component.ts では、次のように templateUrl を介してテンプレートを参照しています
周りを見回しましたが、このエラーの解決策が見つかりませんでした。この問題を知っている人はいますか?これまでに遭遇したすべての例 (たとえば、このリポジトリhttps://github.com/rangle/angular2-redux-exampleの例など) にはすべてインライン html が含まれています。
webpack / karma 構成ファイルを確認したい場合に備えて、私のレポへのリンクを次に示します。 https://github.com/jeanpaulattard/tourofheroes
編集:私のレポのマスターブランチへのリンクを更新しました。
angular - テスト - (ClassName) のすべてのパラメーターを解決できません
環境
ApiService
独自のシリアライザーとその他の機能を使用しながら、カスタム API クエリを処理できるクラスを作成しました。
ApiService
のコンストラクターの署名は次のとおりです。
MetaManager
API のメタデータを処理する注入可能なサービスです。ApiConnectorService
Http
カスタムヘッダーと署名システムを追加するためのラッピングサービスです。EventDispatcher
は基本的に Symfony のイベント ディスパッチャー システムであり、typescript で記述されています。
問題
をテストするときApiService
は、 で初期化を行いますbeforeEach
。
そしてそれはうまくいきます。
次に、 用の 2 番目のスペック ファイルを次のように追加ApiConnectorService
しbeforeEach
ます。
そして、すべてのテストが次のエラーで失敗します。
エラー: ApiService のすべてのパラメーターを解決できません: (MetaManager、?、EventDispatcher)。
api-connector-service.spec.ts
ロードしたテストから(ApiConnectorService
の仕様ファイル)を削除すると、ApiService
のテストは成功します。api-service.spec.ts
ロードしたテストから(ApiService
の仕様ファイル)を削除すると、ApiConnectorService
のテストは成功します。
なぜこのエラーが発生するのですか? 私の 2 つのファイル間のコンテキストが競合しているように見えますが、これを修正する理由と方法がわかりません。
unit-testing - Angular2 で FormControl を単体テストする方法
テスト中の私の方法は次のとおりです。
お分かりのように、paymentTerm は Observable を返すフォーム コントロールであり、その後サブスクライブされ、戻り値がチェックされます。
FormControl の単体テストに関するドキュメントが見つからないようです。最も近いのは、Mocking Http requests に関するこの記事です。これは、Observable を返すのと同様の概念ですが、完全には当てはまらないと思います。
参考までに、私は Angular RC5 を使用しており、Karma でテストを実行しています。フレームワークは Jasmine です。