共通の冗談
別の結果をテストするためにMatcherと呼ばれる何かを使っている冗談.
これらのmatchersは、基準が我々がそれを予想するかどうか決定するのに用いられることができます.
にprevious article 使いました
しかし、我々が活用することができる多くの異なるものがあります.この記事では、いくつかの一般的に使用されるものを見ていきます.
最も簡単な形式では、
例えば、
同じことが文字列操作を決定するために使用することができます.
このためには、
時々、我々は正確な出力を知りません、しかし、我々は結果が特定の何かであることを望みません.
我々がゼロであるさいころがあると言いましょう、そして、ロールで、それはゼロ以外の何でもなければなりません.
そのためには、
我々が見たとき、我々は何かをチェックすることができます これらは特定のアサーションをチェックするのに非常に良いです、そして、特に何かがこれらの1つでないことを確認するために.
これまで、我々は我々が利用できるのを見ました
しかし、我々はさらに一歩を踏み出すことができ、さらにどの程度の数字が一致する必要があります決定します.
多くの場合、特定の部分に基づいて文字列にマッチしたいだけです.
我々は100 %の値の残りを知っていない可能性がありますように.
このためには、
これらはいくつかの基本操作ですが、使用する操作の完全なリストではありません.
これらの多くは、画面上に要素が表示されているかどうかを判断するために超クールですので、我々はそれに後で取得します.
どのテストを使いますか.
私のブログを読んでくれてありがとう.私の電子メール会報を購読して、接続してくださいFacebook or
これらのmatchersは、基準が我々がそれを予想するかどうか決定するのに用いられることができます.
にprevious article 使いました
toBeTruthy
and toBeFalsy
.しかし、我々が活用することができる多くの異なるものがあります.この記事では、いくつかの一般的に使用されるものを見ていきます.
基本的なマッチ
最も簡単な形式では、
toBe
何かを仮定するMatcherは“特定”の値にする必要があります.例えば、
test('two plus two is four', () => {
expect(2 + 2).toBe(4);
});
これは、我々は常に結果を4になると計算です.同じことが文字列操作を決定するために使用することができます.
test('uppercase is correct', () => {
expect('abc'.toUpperCase()).toBe('ABC');
});
また、オブジェクトが特定の形式であるかどうかを確認したい場合もあります.このためには、
toEqual
チェック.test('should modify a object', () => {
const data = { foo: 'bar' };
data['baz'] = 'fuu';
expect(data).toEqual({ foo: 'bar', baz: 'fuu' });
});
もう一つのよく使用される方法は、特定の基準がもはや満たされないかどうかチェックすることです.時々、我々は正確な出力を知りません、しかし、我々は結果が特定の何かであることを望みません.
我々がゼロであるさいころがあると言いましょう、そして、ロールで、それはゼロ以外の何でもなければなりません.
test('roll the dice', () => {
let dice = 0;
expect(rollDice(dice)).not.toBe(0);
});
配列の場合、配列に特定の要素が含まれているかどうかを確認したい場合があります.そのためには、
toContain
テスト.test('Dont forget the milk', () => {
const shoppingList = ['coffee', 'eggs', 'milk'];
expect(shoppingList).toContain('milk');
});
信頼性を決定する
我々が見たとき、我々は何かをチェックすることができます
true
or false
, しかし、我々は余分なカップルを持ってtruthiness
チェック.toBeNull
: 出力が正確ならnull
toBeUndefined
: 出力が正確ならundefined
toBeDefined
: 何でもundefined
toBeTruthy
: 真実とみなされるものtoBeFalsy
: 誤っていると思われる何でも数で計算する
これまで、我々は我々が利用できるのを見ました
toBe
を指定します.しかし、我々はさらに一歩を踏み出すことができ、さらにどの程度の数字が一致する必要があります決定します.
toBeGreaterThan
: 特定の数より重要であるべきであるtoBeGreaterThanOrEqual
: 特定の数より大きいか等しいtoBeLessThan
: ある数未満toBeLessThanOrEqual
: 特定の数以下のtoBeCloseTo
: 浮動小数点数に対して特定の10進数に近い文字列正規表現
多くの場合、特定の部分に基づいて文字列にマッチしたいだけです.
我々は100 %の値の残りを知っていない可能性がありますように.
このためには、
toMatch
. パラメータとして正規正規表現を使用します.test('Test for part of string', () => {
expect('Christian').toMatch(/Chris/);
});
他の方法では、一部がこの文字列にないことを確認できます.test('Make sure nothing went wrong', () => {
expect('Something went wrong, sorry').not.toMatch(/wrong/);
});
Note: The above will fail as we do have the word "wrong" in our test case
しかし、もっと!
これらはいくつかの基本操作ですが、使用する操作の完全なリストではありません.
これらの多くは、画面上に要素が表示されているかどうかを判断するために超クールですので、我々はそれに後で取得します.
どのテストを使いますか.
読んでいただきありがとうございます、接続しましょう!
私のブログを読んでくれてありがとう.私の電子メール会報を購読して、接続してくださいFacebook or
Reference
この問題について(共通の冗談), 我々は、より多くの情報をここで見つけました https://dev.to/dailydevtips1/common-jest-matchers-3819テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol