0

htmlタグの応答ストリームをアサートするのに役立つshouldjsまたはその他のアサーションライブラリの拡張を知っている人はいますか。

次のような受け入れテストを書きたいと思います

body.should.contain.link 'login'

また

body.should.contain.h1 'Hello world'

かなり便利な私の頭に浮かんだ例です...

または、どのように反応をテストしますか...?

ありがとう

4

2 に答える 2

2

Chai Assertion Library には、興味のあるプラグインがありますが、その正確なマークアップはサポートされていません。

まず、ブラウザでテストしている場合はchai-jqueryがあります。これにより、次のようなことが可能になります。

$('body').should.have('h1.title').text('Hello world');

スニペットの外観からすると、サーバー側でテストしているため、状況が少し複雑になります。jsdom を使用してサーバーから返された html を解析し、それを jquery オブジェクトにロードしてテストすることで、chai-jquery をノードで動作させようとしましたが、jsdom は jQuery でうまく機能しません。

私が見た(まだ試していない)代替手段はcherioです。jQueryが期待されるように動作するようです。その場合、このようなことを行うことができます(テストされていません)...

$('h1', body).text().should.contain('Hello universe');

あなたが始めるのに十分であることを願っています。

于 2012-06-23T03:18:55.620 に答える
0

数か月前に同じ問題に遭遇しましたが、コードが見つからないようです。最近チャイについて多くの人が話しているのを耳にしましたが、チャイには should に似た API があります。これには、 containメソッドがあることがわかりました。

于 2012-06-01T18:58:54.577 に答える