3

jQuery を使用する関数がいくつかあります。そして、Mocha+Chai で jQuery-Chai を使用してそれらをテストする適切な方法を理解するのに苦労しています。

jQuery-Chai プラグインにアサーションのリストが表示されます。しかし、これらのアサーションを実行するための DOM データをどこで取得するのかわかりません。

理想的には、html の行を挿入したいと考えています。その上で関数を実行します。そして、jQuery-Chai アサーションを使用して検証します。

これらの機能をテストするためにフィクスチャをどこに含めるかを明確にするのを手伝ってくれる人はいますか?

前もって感謝します。

使用: モカ + チャイの Testem。

4

1 に答える 1

1

ご指摘のとおり、chai-jqueryは DOM 要素に対して使用できるアサーションのみを提供します。実際に DOM を設定するには、別のライブラリを使用する必要があります。chai-jquery が機能するには jQuery が含まれている必要があるため、最も簡単な解決策は、jQuery のappend()関数を使用して子要素を DOM に追加し、テストの最後に jQuery のremove()関数を使用して削除することです。

または、DOM 操作を少し抽象化したい場合は、フィクスチャ ライブラリを取り込んでみることができます。この目的で私のお気に入りはjs-fixturesです。set()必要な場合は、関数を使用して 1 行の html を簡単に挿入できます。

fixtures.set('<div>Your html here</div>');

ただし、テスト html がより複雑になった場合は、それをサンプル html ファイルに抽出し、load()関数を使用してその全体を DOM にロードできます。

fixtures.load('yourTestPage.html');

最後に、テストが終了したら、 を使用してフィクスチャを簡単にクリーニングできますfixtures.cleanUp()

于 2016-10-03T18:53:03.510 に答える