問題タブ [js-test-driver]
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 - DOM 要素とやり取りする Javascript コードを単体テストする方法
バックグラウンド:
私は Java のバックグラウンドを持っているので、Javascript にはあまり詳しくありません。
JavaScript 単体テストを既存の (レガシー) コードと将来の作業の両方に導入する予定です。私たちは主にJavaショップ(Spring、Weblogicなど)です。
私たちは、IDE (IntelliJ のアイデア) とソナーとの適切な統合を実現し、継続的統合の一部としてそれらを実行できるオプションを検討しています。
JsTestDriver は、すべてのボックスにチェックを入れているようです。
質問:
既存の JavaScript コードの多くは、a) JSP 内に埋め込まれており、b) jQuery を利用してページ要素と直接対話しています。
DOM に大きく依存している関数をテストするにはどうすればよいでしょうか。私が話している関数のコード例を次に示します。
また
後者の場合、私のアプローチは、問題の関数が大きすぎるため、テストできるように、より小さな (単位) に分割する必要があるというものです。しかし、DOM、jQuery、データテーブル、ajax などとのすべての相互作用ポイントにより、Java の世界で行っているように、よりテストしやすくするためにリファクタリングすることが非常に複雑になります。
したがって、サンプルケースに対する上記の提案は大歓迎です!
javascript - ヘッドレスJsTestDriverを実行しますか?
jsTestDriverをヘッドレス状態で使用して、ブラウザーをロードするが、ヘッドレスで使用する(ブラウザーが表示されない)、またはブラウザーを最小化してロードする方法はありますか?
qunit - JSTestDriver アダプター (QUnitAdapter.js) で QUnit を使用する場合のバージョンの不一致
jsTestDriver を使用して、QUnit で記述された単体テストを実行しようとしています。「ReferenceError: equal が定義されていません」というメッセージが表示されます。ソース コードを確認すると、アダプター (Qunit->jsTestDriver) QUnitAdapter.js が equals メソッドをサポートしていることがわかります。
Qunit は equals をサポートしていませんが (昨年 equal に名前が変更されました)。
ここで何か不足していますか?
ps WebStorm 4に統合されたjsTestDriverを使用しています。
linux - JsTestDriverFirefoxブラウザのクラッシュ
JsTestDriverを使い始めたばかりで、環境が正しく構成されているかどうかを確認するための非常に単純なデモコードを作成しました。ただし、Firefoxを(JsTestDriverを介して)起動すると、約40〜50%の確率で、「起動中にFirefoxが予期せず閉じられました」というエラーが発生します。
Chromeを使用している場合、このエラーは発生しません。
私の環境は次のもので構成されています。
- Ubuntu 10.04.4LTS32ビットを実行しているVirtualBox4.1.18
- Firefox 13.0.1
- JsTestDriver-1.3.4.b
- openjdk-6-jre-ヘッドレス
私は実行しています:
java -jar /home/developer/bin/JsTestDriver.jar --port 9876 --browser /usr/bin/firefox --tests all --testOutput results
私のJsTestDriver構成は次のとおりです。
ソースコード(テスト中のコード)は次のとおりです。
テストコード(JsTestDriverベースのコード)は次のとおりです。
ありがとう!
unit-testing - ブラウザーなしで jstd-maven-plugin テストを実行する
私はjsTestDriverを稼働させており、jstd-maven-plugin を使用してビルド中にテストを実行しています。
ただし、プラグインを機能させるにはブラウザーを指定する必要があります。実際にはブラウザーを起動しないrhinoやhtmlunitなどを使用したいと思います。
jasmine-maven-pluginはhtmlunitでこれを行い、非常にうまく機能します。
jstd-maven-plugin にヘッドレスブラウザを指定する方法はありますか?
unit-testing - JsTestDriver - アーティファクトの欠落エラー
JsTestDriverをMavenに統合して、デプロイする前にスクリプトもテストしようとしています。実際、Google Code hereで説明されている手順に従います。残念ながら、依存関係を解決することはできません。Mavenの settings.xmlにリポジトリと plugin-repository を追加したにもかかわらず、「Missing artifact com.googlecode.jstd-maven-plugin:jstd-maven-plugin:jar:1.3.2.5」というエラーが表示されます。
誰かが私を訂正/ガイドしてくれたらとても嬉しいです.
前もって感謝します。
よろしく。
settings.xml
pom.xml
google-chrome - CygwinでJenkinsからChromeを実行できません
Cygwinを使用するWindowsXPでローカルにJenkinsを使用してJsTestDriverをテストしています(システムパスの先頭にあります)。
Jenkinsは、次の内容を含む.shスクリプトを呼び出します。
Google Chromeが含まれていると、Jenkinsジョブが停止し、最終的にコンソール出力で次のエラーが発生します。
CygwinでGoogleChromeを実行しようとすると機能しますが、次のメッセージが表示されます。
JenkinsをWindowsサービスとして実行していて、Chromeを自分(ユーザープロファイル)として実行する必要があるために実行できないという問題はありますか?
javascript - JSテストドライバーのコードカバレッジから依存関係を除外する
私のJSTestDriver構成ファイルでは、ユニットテストをのtest
代わりに下に置くことでコードカバレッジ計算からユニットテストを除外していますload
。
ただし、Underscore.jsのjQueryのような依存関係については、コードの前にロードする必要があるため、これを行うことはできません。
これを回避する方法はありますか?それとも、遅いコードカバレッジの実行と統計の乱雑さに対処するだけですか?
javascript - jsTestDriverでファイルを再帰的に検索する
jsTestDriverがconfigからテストするためにファイルを再帰的に検索できないことを回避する方法を見つけた人はいますか?ここに文書化されています:http ://code.google.com/p/js-test-driver/issues/detail?id = 6
現在、jsTestDriver構成で/ root / module/**のようなものを指定することはできません。
unit-testing - JsTestDriver がブラウザの 2 番目のインスタンスを作成するのはなぜですか?
FireFox を開き、キャプチャ URL (既定では localhost:9876/capture ) に移動します。
次に、jstestdriver を介してジャスミン テストを実行します。
言う出力:
テストを実行する前であっても、Firefox で [閉じる] をクリックすると、jstestdriver は 1 つのインスタンスを閉じたものとして登録しますが、ブラウザーは開いたままです。キャプチャおよび/またはサーバーを開いた後、Firefox の 2 つのインスタンスが実行されているようです。
なぜそれが起こるのでしょうか?