問題タブ [jasmine-maven-plugin]
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.
javascript - Jasmine で何の単体テストを作成する必要がありますか?
私はシステムライフサイクルの逆の作業をしています。数か月前、私は大規模な JavaScript ライブラリを作成しました。その後、すべてを客観的にする必要がありましたが、今では単体テストを作成する必要があります。私はMavenを使用しておりjasmine-maven-plugin
、pom.xmlに. 私が抱えている問題は、何のためにテストを書くべきか、そしていくつテストを書くべきかということです。
この最初の例は単純です。この関数は文字列を受け取り、最初の文字を大文字にして返します。
したがって、私の単体テストは次のとおりです。
ただし、他の多くの方法で何をすべきかわかりません。それらの大部分は、タブの変更、通知の表示、コントロールの無効化/有効化などの html コードを処理します。メソッドを期待するだけtoHaveBeenCalled
ですか、それともそれ以上のものがありますか?
タブを変更し、特定のタブをロードし、通知を非表示にする次の例を確認してください。
説明をいただければ幸いです。
maven - jasmine-maven-plugin から setOnopen ランタイム例外を取得する
プロジェクトに jasmine-maven-plugin を実装しようとしています。
私のプロジェクトには複数の個別の Web プロジェクトがあり、1 つを除くすべての Web プロジェクトに上記のプラグインをうまく統合できました。
すべての Web プロジェクトでHtmlUnitドライバーを使用しましたが、 RuntimeException: Exception invoking setOnopen from WebSocketクラスで特定の Web プロジェクトが発生し、他のプロジェクトは正常に実行されています。
phantomjsドライバーを使用する場合、 htmlunitの代わりにシームレスに動作しますが、そのためにはシステム PATH に phantomjs 実行可能ファイルを保持する必要があります。このため、上記の setOnopen 例外をスローしている htmlunit ドライバーを使用したいと考えています。
私はたくさんのグーグルをしましたが、解決策を得ることができませんでした.この問題について何か洞察があれば教えてください. 前もって感謝します。
jenkins - Jenkins 内で jasmine-maven-plugin を使用して JavaScript をロード中にエラーが発生しました
jasmine-maven-plugin を使用して Jasmine テストを実行しているときに、アプリケーション内部の JavaScript をロードしているときに、次のエラーが頻繁に発生します。これは、CI 環境 (Jenkins) で実行した場合にのみ発生するようで、テストを実行するたびに発生するわけではありません。Jetty が開始され、指定されたポートでリッスンしていることを確認しました。
誰もこれに遭遇したことがありますか?もしそうなら、ビルドを安定させる解決策はありますか?
プラグイン構成:
エラー:
requirejs - MAVEN-PLUGIN を使用して JASMINE をセットアップするには?
私は次のようなフォルダ構造を持っています
「model」、「views」、「collections」を含む「spec」フォルダーに JASMINE テスト ケースを作成しました。
runner.html でテスト結果を確認できます。
今、私は MAVEN ビルドと統合しようとしています。SO はhttp://searls.github.io/jasmine-maven-pluginに記載されている手順に従いました
しかし、mvn clean install を実行するとビルド エラーが発生し、mvn jasmine:bdd を実行すると localhost:8234 で何も表示されません
何が悪かったのかわかりません。コンソールのエラーは、require js に関するものを示しています。
以下は、jasmine-maven プラグインの私の POM.xml です。
MAVEN ビルドに統合されたデモ プロジェクト (バックボーン + 要求 + ジャスミン) を提供してください。
前もって感謝します。
いくつかのブログを読み、jasmine-maven プラグインを次のように編集してみました
これで、次のように mvn clean install 中にコンソールで JASMINE の仕様を確認できるようになりました。
原因: net.sourceforge.htmlunit.corejs.javascript.JavaScriptException: エラー: src/views/../../templates/menu.tmpl HTTP ステータス: 404
テンプレート ファイル (例外) でエラーが発生しますが、これが何なのかわかりません。
これについて何か助けはありますか?
ありがとう。
javascript - jasmine-maven-plugin 他のテスト ユーティリティの共通スクリプトを読み込む
同じ共通ユーティリティ スクリプトを共有する必要がある複数のテストがあります。このファイルはテストにのみ関連するため、ソース フォルダー構造には配置したくありません。
したがって、私のソースフォルダーは次のとおりです。
そして私のテストソース:
src/test/js には、他のジャスミン テストでロードする必要がある testUtil.js ファイルがあります。jasmine テスト内からそのようなファイルにアクセスすることは可能ですか?
angularjs - ジョン・パパ「Y165」とテスト
私のプロジェクトは、John Papa の Y165 勧告のような構造になっています。Web プロジェクトは正常に動作します (したがって、私の app.modile.js は正しく、モジュール ステートメントも同様です)。
問題はテストにあります。
私は PhamtomJS で jasmine-maven-plugin を使用しています (リファクタリングがすべて OK になる前)。
現在、エラーが発生しています: [$injector:nomod] Module 'xxxxxxxx' is not available ! モジュール名のつづりを間違えたか、モジュールをロードするのを忘れました。モジュールを登録する場合は、依存関係を 2 番目の引数として指定する必要があります。
最初に : beforeEach(module('app')) を作成するので、通常、モジュールは Web プロジェクトのように表示されます。
angularjs - jasmine-maven-plugin + phantomJS : エラー: [$injector:nomod]
私はプロジェクトを作成します:
最初にmvn jasmine:testでテストします。テストは正常に実行されます。
注:私はmaven 3.2.1を使用しています
「ターゲット」ディレクトリに、「phantomjs.exe」を置くフォルダー「phantomjs-1.9.7-windows」を追加します。
元の pom.xml を変更して追加します
「src/main/javascript」の下に「libs」フォルダーを作成し、そこに入れます: - jquery-1.9.1.js - angular.js - angular-ui-router.js - angular-resource.js
注:角度はバージョン1.2.23にあります
その後、「src/main/javascript」の下に「app」という別のフォルダーを作成し、その中に「app.module.js」を入れます。
「src/main/javascript/app」の下に「security」フォルダーを作成し、「security.module.js」を入れます
および「cha_directive.js」
mvn jasmine:testでテストすると、エラーが発生します:
「toto_directive.js」の「cha_directive.js」の名前を変更して(同じソースコードを使用)、mvn jasmine:testを再度実行すると、テストは正常に実行されます。
「cha_directive.js」という名前のファイルを使用してmvn jasmine:bddを実行した場合。その後、FF で URL http://localhost:8234を実行すると、テストは正常に実行されます。
唯一のこと (「Jasmine Spec Runner」の HTML コードを fireBug で編集した場合) は、次のタグが表示されることです。
「checkForConsoleErrors」のクラス SpecRunnerExecutor.java を見ると、テストがあります。
注:他のファイル名はテストをクラッシュさせます:input_directive.js、accessKey_directive.js、...