問題タブ [qunit]
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.
ruby-on-rails - Gitでバージョン管理されている間に、Capistranoでデプロイされるファイルを除外する
RailsアプリでqUnitを使用してJavaScriptのテストを開始したいのですが、テストJavaScriptとテストランナーのHTMLページをバージョン管理下に置く方法を考えています(もちろんGitを使用しています)が、本番サーバーから離れたままにしておくとCapistranoを使用してアプリをデプロイします。私の最初の考えは、Capistranoにテストファイルを含むすべてのコードを通常どおりに送信させ、展開プロセスの最後にそれらを削除するタスクを作成することです。ただし、これは一種のハックのようです。デプロイ時にリポジトリの特定の部分を無視するようにCapistranoに指示するよりクリーンな方法はありますか?
jquery - jQuery パラダイムは単体テストに反しますか、それとも補完しますか?
はい、私はQUnitを認識していますが、jQuery パラダイムでは、より少ないコードでより速く物事を成し遂げることがすべてであり、これは TDD パラダイムとどのように対立していますか? それとも何らかの形でそれを補完しますか?
jquery - qunitを使用してserializeArrayの出力を比較する方法
私はqunitとjqueryを使用しています。両方の最新バージョン。
私のコードでは、フォームを送信すると、eとしてイベントが発生します。電話する
これが私のテストです。
そしてこれはqunitからのエラーメッセージです。
肉眼で見ることができるように、期待値と結果値は同じですが、qunitはそれを好みません。
私は何かが欠けていると思います。
javascript - qUnitを非同期的にロードする
QUnitをjsにロードしようとしていますが、QUnit.jsのaddevent関数が起動されず、機能していません。
javascript - jQueryでJavaScriptのチェックボックスをオーバーライドする
チェックボックスの動作の単体テストに役立ちます。私はこのページを持っています:
これは機能しません。これはreturn false;
、クリック ハンドラーが原因です。私がそれを取り除くと、それはうまく機能します。問題は、クリック機能を独自の機能に引き出し、それを qunit で単体テストすると、return false;
[編集] @patrick の回答を使用すると、結果は次のようになります。
ファイアフォックス:
- おもちゃの手動テスト - 良好。
- 単体テスト - 良い。
- 実稼働アプリの手動テスト - 良好。
インターネットエクスプローラ:
- おもちゃの手動テスト - 不合格。
- 単体テスト - 良い。
- 本番アプリの手動テスト - 不合格。
Internet Explorer では、最初はワンクリックが必要です。その後、2 回クリックする必要があります。
jQuery はブラウザーを抽象化するためのものだと思いましたか?
ソリューションのチェック ボックスの動作全体をオーバーライドする必要がありますか?
私の単体テストでは、これは私がユーザーのチェックボックスシミュレーションを行っている方法です:
また:
jquery - AJAX を使用した標準のイベント メッセージング システムですか?
AJAX の標準またはメッセージング フレームワークはありますか?
現在、Ajax を使用してコンテンツをロードする 1 つのページがあります。コンテンツの一部としてデータ入力用の複雑なフォームがあったため、フォームで発生する可能性がある特定のイベントを検証する必要があります。したがって、私のテストによって引き起こされたいくつかの調整の後:
コンテンツを取得するためのコントローラーは次のとおりです。
そして、ここにリクエストイベントがあります:
}
そして、成功ハンドラは次のとおりです。
サーバー側では、最終的に次のような JSON 構造になります。
したがって、コンテンツのロードは次の 2 つの部分で構成されます。
- HTML、これはフォームのプレゼンテーションです。
- DATA、これはフォームにロードする必要があるデータです
- FLASH、検証またはサーバー エラー
- STATUS は、サーバーで何が起こったかをクライアントに伝えます。
私の質問は次のとおりです。これは、クライアント側でイベント メッセージングを処理する有効な方法ですか、それとも心痛と痛みの道をたどっていますか?
urlencode - QUnit と urlencode
urlencoded クエリ文字列を作成するユーティリティ メソッドをテストしようとしています。それはどういうわけか「期待される」を次のようにデコードします: ?foo=foo val&bar=bar&val ...したがって、urlencodingをデコードしています!
結果: 1. 予想される urlencoded 文字列は次のように構築されます?foo=foo+val&bar=bar%26val、予想される: " ?foo=foo val&bar=bar&val " 結果: "?foo=foo+val&bar=bar%26val"、差分: "?foo=foo val&bar=bar&val" "?foo=foo+val&bar=bar%26val"
これはqunitのバグですか、それとも何かを見落としていますか?
javascript - JS - qunit を使用してテストする方法
JS API は、HTML (マークアップ セマンティクスと CSS) に基づいて多くのことを行います。以下のような多くのコードがあります。
コードが何をするかは気にしないでください。単なる例です。qUnitを使用してテストする方法は、この機能が機能します。私の推測では、上記のクラスでいくつかの HTML 要素を設定する必要があり、これをどのようにテストする必要があるのでしょうか? qUnitの機能は理解していますが、かなり基本的なものが欠けていることは確かです。手伝っていただけませんか?ありがとう。
javascript - QUnit テストからネイティブ Javascript イベントをトリガーするにはどうすればよいですか?
jQuery に依存しない Javascript ライブラリに取り組んでいますが、テストでは jQuery と QUnit を使用できます。ライブラリでは、jQuery と同じように要素にイベントをアタッチします。
QUnit テストで呼び出してみ$('#tab').click();
ましたが、イベント ハンドラーが呼び出されません。
javascript - javascriptで、2つのアイテムが等しいとどのように主張できますか?
私はRhinoを実行していて、Javascriptでassert_equals()またはそれに相当するものを実行する方法を決定しようとしています。Rhinoシェルからqunitをロードできますが、失敗するアサーションを作成できません。
Javascriptでアサーションを使用する最も簡単な方法は何ですか?Webブラウザー以外の環境でJavascriptを使用するので、Rhinoシェルからこれを行う方法を知っていると非常に役立ちます。
動作しないものの例。