問題タブ [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 - Angular 2 - 依存関係のある angular-cli パイプ テスト
比較的孤立した のテストを実装しようとしていPipe
ます。私はangular-cli
(@angular
2.0.0で)の最新バージョンを使用しています。
パイプコードは次のとおりです。
仕様コードは次のとおりです。
健全性テストはパスしますが、実際のテストは次のエラーで失敗します。
私が見逃した構成だと確信していますが、何らかの理由でDataTablePipe
テストモジュールにインポートされていません...
何か案は?
angular - Angular2 - 注入されたプライベート サービス メソッドが呼び出されたことをテストする
まず、プライベート メソッドをテストするべきではないことは理解していますが、プライベート メソッドが何らかのロジックに基づいて呼び出されたかどうかをテストする必要がある場合があると感じています。
すべての http リクエストにコードを書き込むことなくグローバル エラー処理を実行できるように、angular 2 http サービスのラッパー サービスを構築しています。
クラスの小さなサンプルは次のようになります。
get メソッドをテストし、Error 応答でモック応答をテストして、catch が発生するようにしたい場合、これはプライベートであるため、error.dispatch メソッドが呼び出されたかどうかをテストできません。プライベート メソッドをスパイできません。
「キャッチ」が起動されていることをテストしているだけであり、明らかにその内部のメソッドが起動する場合は、http サービス自体をテストしているだけだと主張することもできます。「catch」が発生した場合は error.dispatch が呼び出しとして追加され、何らかの理由で別の開発者によって削除された場合は失敗することを確認したい。多分これはそれをテストする悪い方法ですか?私は他の提案を受け入れます。
次のようにプライベート クラスをモックできます。
しかし、ApiService クラスの設計図は同じままであり、現在の FakeError サービスはまだ非公開です。Java では、自分でインスタンスを作成し、それを注入できます。それを所有しているため、アクセスできます。私はjasmine/typescript/angular2でそれを行う方法を見つけようとしていると思います??
javascript - Angular 2 最終リリース ルーター単体テスト
Angular バージョン 2.0.0 でカルマとジャスミンを使用してルーターを単体テストするにはどうすればよいですか?
バージョン 2.0.0-beta.14 での古い単体テストは次のようになります。
unit-testing - TypeError: Angular 2.0 final にアップグレードした後、null のプロパティ 'injector' を読み取ることができません
Angular 2 RC5 から 2.0 Final にアップグレードした後、テストを実行すると次のエラーが表示されます。何が問題なのかわかりません。
これが私のテストの1つの例です:
この問題を示すプル リクエストについては、GitHub を参照してください: https://github.com/mraible/ng2-demo/pull/4
unit-testing - beforeEach の代わりに beforeAll を使用すると、Angular 2 CLI Jasmine 単体テストが失敗する
NG-CLI (beta.15) で新しいプロジェクトを作成し、を変更して をapp.component.spec
に変更したところ、次のエラーでテストが失敗しました。beforeEach
beforeAll
失敗: テスト モジュールにインポートされていないため、コンポーネント AppComponent を作成できません!
このエラーが何を意味するのか、もちろんそもそもなぜエラーが発生するのかわかりません。
変更された仕様は次のとおりです。
次に、仕様をこれに変更すると、最初の 2 つのテストは成功し、3 つ目のテストは失敗して次のメッセージが表示されます。
失敗しました: 破棄されたビューを使用しようとしました: detectChanges
なぜ失敗があるのか わかりません。
angular - テスト目的で angular2 platform-browser Title コンポーネントをモックする方法
Jasmine を使用して Angular 2 コンポーネントの単体テストを作成しています。コンポーネントがインスタンス化されたときに、ドキュメントのタイトルが特定の値に設定されているかどうかをテストしたいと考えています。
これが私のコンポーネントです
ここに私がテスト用に書いたものがありますが、機能していません。titleService.getTitle()
Karma デバッグ ランナー ページのタイトルを教えてくれます。
カルマ出力は次のとおりです。
エラー: 'Karma DEBUG RUNNER' は 'Account' である必要があります。
angular - angular2-materialコンポーネントを使用してangular2.0でngテストを実行するとテストケースが失敗する
アプリケーションで angular2.0 を使用しています
angular2-material コンポーネントをインストールし、必要なモジュールにインポートしました
コンポーネントの 1 つのテスト ケースを作成してみました
//about.component.html
//about.component.ts
//about.component.spec.ts
//package.json
すると、次のようng test
になります。
この問題を解決する方法はありますか?