問題タブ [karma-runner]
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.
unit-testing - 単体テストを実行していないカルマ
Jasmine 単体テストを実際に実行するのに問題があるようです。logLevel を LOG_DEBUG に設定して、すべてのスクリプトがロードされていることを確認しました。私の単体テストは、サービス テスト @ https://github.com/angular/angular-seed/blob/master/test/unit/servicesSpec.jsと同じです。
また、Testacular (Karma に名前が変更される前) を使用しましたが、この問題が発生したことを覚えていません。Chrome を実行できるようですが、「デバッグ」ボタンを手動で押す必要があります。このボタンを押しても、テストは実行されません。
システムの詳細:
- ウィンドウズ7
- ノード v0.10.4
- クローム 26.0.14
- Karma 0.8.5 (3 つの警告付きでインストールされました -- 2 つの精度の損失と 1 つの「インライン関数 v8::Persistent v8::Persistent::New(v8::Handle) の定義がありません」)
これが私のモジュール コードです (Scripts/main.js):
これが私の仕様です(Test/unit/servicesSpec.js):
ここに私の karma.conf.js ファイルがあります:
javascript - Karma JavaScript テストと Maven の統合
Karma ベースの JS 単体テストを Maven に追加しています。次の構成を使用しました。
を使用すると、テストはマシン上で (Maven なしで) 個別に動作しますkarma start karma.conf.js
が、Maven を使用すると、次のエラーが発生しました。
少し奇妙だと思う理由は次のとおりです。このクラスによると、 はkarma.conf.js
デフォルトで見つかるはずです ( @Parameter(defaultValue = "${basedir}/karma.conf.js", property = "configFile", required = true)
)。また、-DconfigFile=...
パラメーターに絶対パスと相対パスを渡そうとしましたが、機能しませんでした。Windowsを使っていましたが、問題ないと思います。構成のどこが間違っているのか正確にはわかりませんが、アドバイスをいただければ幸いです。
javascript - Angular シナリオの e2e テストは外部リソース ワークフローを統合できますか
Karma Runner (ex-Testacular) e2e シナリオ ランナーを使用して、オフサイト/アプリ外/外部リソース ワークフローを e2e テストに統合するにはどうすればよいですか?
基本的なシナリオ:
- アプリにはボタンがあります。
- ボタンをクリックして、データをサービス プロバイダー X に送信します (例: submit to
http://service/submit
など)。 - プロバイダー X は、この URL でのクリック/送信/アクションを必要とします。
- その後、プロバイダー X は何かをアプリに送り返します。
「プロバイダー X をどのようにスタブ化しますか」と尋ねているわけではありません。これを実際にエンドツーエンドでテストする方法をお尋ねします。これにより、テストでサードパーティ サービス API の重大な変更を実際にキャッチできます。私は基本的に、Selenium の Webdriver のようなものでできるように、アプリ外の Web サイトを駆動できるようにしたいと考えています。
現在、私の問題はelement( ref ).click()
ステップ2を試みるために使用しています.必要なサイトをロードしていないようです.
twitter-bootstrap - Karma Runner > angular および angular-mocks が例外をスローする前に bootstrap.js をロードする
jquery と bootstrap コンポーネントを利用するいくつかのディレクティブを含む angularjs アプリがあります。したがって、ディレクティブをテストするために、karma.unit.conf.js で次の順序でファイルを定義しました。
最初に angularjs と angular-mocks をロードし、次に jquery と bootstrap をロードすると、angular が独自の jQLite を使用するため、テストが実行されて失敗します。しかし、ここで書いたように順序を変更すると、次のようになります。
編集:
例外の原因は jQuery ではなく、bootstrap.js であることがわかりました。bootstrap.js の行にコメントを付けると、テストが実行されます (そして、ブートストラップ コンポーネントがロードされていないため、期待どおりに失敗します)。上記のように(またはテスト前に他の場所で)ブートストラップをロードすると、次のようになります。
この行at /home/ir/work/campari/app/components/jquery/jquery.js:2850
は、テストが失敗するまで約 15,000 回無限に繰り返されます (jQuery が jquery.js:1763 で internalData 関数を実行しようとしたときに発生しているようです)。
任意のアイデアをいただければ幸いです
編集:解決済み
答えが見つかりました。これはバージョン 2.3.0 のブートストラップの問題であり、2.3.1 に更新すると解決しました。https://github.com/twitter/bootstrap/issues/6835を参照してください
angularjs - Karma と Webstorm の統合
Windows 用の Karma と Webstorm を統合したいのですが、次の Web の手順に従いました: http://mobicon.tistory.com/273 (英語に翻訳) が機能しません。
Karma サーバーを 1 つ作成し、Karma ランを 1 つ作成しました。
Path to Node Js File textfield で、node-modules のカルマ ファイルを指定しました。
C:\Users\xxx\AppData\Roaming\npm-cache\karma\0.8.4\package\bin\karma
サーバー起動および Karma Run 実行のアプリケーション パラメーター
次のエラーが表示されます。
angularjs - 過去と未来の比較をテストする Angularjs e2e
私は現在、単純な未来/過去の比較を行う方法があるかどうかを理解しようとしています.
1) リストの長さを取得してリストの状態をチェックします。2) 成功するとリストがインクリメントされるアクションを実行します。3) 現在のリストの長さと過去のリストの長さを比較します。
しかし、Futures の概念が私の邪魔をしているようです。これはごく普通の使用例だと思うでしょう。
Q: Angularjs シナリオで過去と未来の比較をどのように処理しますか?