問題タブ [karma-mocha]

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.

0 投票する
1 に答える
445 参照

reactjs - モカのチャイスパイとのトラブル

GlobalMenu.react.js は次のとおりです。

これが私のテストです:

スパイは呼び出されておらず、何が間違っているのかわかりません。アラートがコンソールに出力されているので、関数が呼び出されていることがわかります。componentDocument.handleHomeButton(); のコメントを外すと、テストはパスしますが、それは実際のテストではありません。

これにはスタブを使用する必要がありますか?

0 投票する
1 に答える
2698 参照

angularjs - Angular: $auth でログインをモックする

Karma/Jasmine/Mocha を使用してログイン コントローラーを単体テストする方法を考えています。

私は基本的に 200 が戻ってくるかどうかをテストしたいので、$auth.login()保存されたメッセージは「ログインに成功しました」と等しくなければなりません。

アップデート

現時点で、これが私がいるところです。

login.controller.js

login.controller.spec.js

0 投票する
1 に答える
336 参照

angularjs - angularモジュールmyModuleの問題をインスタンス化できませんでした

プロジェクトで grunt を使用して Karma amd mocha フレームワークを構成しています。実行karma start中に、以下のエラーが発生します。

私のコントローラー:

私のコントローラー仕様:

私の Karma.conf.js

私が欠けているものを提案してください。

0 投票する
0 に答える
563 参照

angularjs - エラー: Karma の [$injector:modulerr]

私は Karma と Mocha を使ったテストの初心者です。次のコントローラーで単体テストを実行したい:

これは私のテストクラスがどのように見えるかです:

しかし、次のエラーが表示されます。

すべての依存関係をkarma.conf.jsに埋め込みました。私のテストクラスのどこが間違っていますか?

0 投票する
1 に答える
44075 参照

javascript - TypeError: expect(...).to.be は関数ではありません

プロジェクトで grunt を使用して Karma amd mocha フレームワークを構成しています。カルマスタートを実行していると、以下のエラーが発生します。

コマンドの実行中にコンソールに次のエラーが表示されます。Karma start

私の Karma.confjs

私のarray.jsテスト

ここに画像の説明を入力

私が欠けているものを提案してください。

0 投票する
2 に答える
1848 参照

webpack - Karma で実行すると、Immutable.js を使用する Mocha テストが失敗する

ここにいくつかのコンテキストがあります。私は、ES6 で書かれた React と Immutable.js を使用するプロジェクトに取り組んでいます。私はBabelとwebpackを使用しています。

ブラウザー外で実行できるように、Mocha、Chai、および jsdom を使用していくつかの単体テストを作成しました。

問題は、一部のコンポーネントが画像を必要とするようなものを使用していることです。このようなものは、特定のローダーを介して webpack によって処理されます。

そのため、ターミナルでテストを実行すると、これらの予期しない要件のために失敗します。

Karma を使用して (ブラウザの外部でテストを実行する機能を残して)、テストを実行する前にソースをコンパイルして、webpack 構成がイメージ ローダーを無視するように (null-loader を使用して)、これを修正する方法を見つけました。

その時点で、テストはカルマを介して実行されていますが、ターミナルを介して実行されたときに合格しているのに失敗しているものもあります(テストの目的で、必要なものがあった行にコメントしました)。

失敗しているテストはすべて Immutable.js に関連しています。つまり、2 つの Immutable オブジェクトの同等性をテストしようとしています。

テストの例を次に示します。

失敗すると、次のような結果が得られます。

不変に関連するものをテストしていない他のすべてのテストは合格しています。

誰かがこれを解決できるアイデアを持っていれば、それは素晴らしいことです! ありがとうございました。

0 投票する
1 に答える
1014 参照

karma-runner - モカ、チャイ、チャイ・アズ・プロミス、チャイ・シノンのカルマ

Mocha、Chai、Sinon、Chai-as-promised、および chai-sinon を使用して Karma テスト スイートを実行しようとしています。

現在、モカ、チャイ、シノンのフレームワークのみでセットアップされています。

ここで、いくつかのカルマ プラグイン、つまり karma-chai-sinon と karma-chai-as-promised を追加してみました。次に、上記を次のように変更します

私の単体テストでは

しかし、これにより「TypeError: '[object Object]' is not a function...」というエラーが表示されます。

期待どおりに動作します。

カルマ プラグインのコードを調べてみましたが、意味がわかりません。カルマ プラグインのどこかに 'chai.use(chaiAsPromised)' と 'chai.use(sinonChai)' があると思っていましたが、そうではありません。 . Karma の Web サイトでは、プラグイン/フレームワークが内部でどのように機能するかについても説明していません。

これを設定するのを手伝ってくれる人はいますか?

前もって感謝します。

0 投票する
0 に答える
170 参照

javascript - karma-ng-html2js-preprocessor で URL パラメーターを使用する方法

ディレクティブをテストしようとしていますが、すべてをカルマでロードすると、ng-html2js を使用します。

モジュールを正常にロードした後、失敗します

実際の質問

ng-html2js モジュールに URL パラメータを追加するにはどうすればよいですか?

?v=VERSIONNUMBER を使用して各テンプレート ファイルにキャッシュを追加するため、ディレクティブでもテンプレート

カルマ構成

テスト