Unit Testとは?
6098 ワード
💎 ユニットテスト?
私がコードを書く最小単位である関数をテストする方法です.
💎 なぜUnitテストが必要なのですか?
フロントエンド開発を行う場合、通常はクロムブラウザを起動して実際の操作のテストを行います.これはE 2 Eテストに相当します.
この場合、新しい機能を実装するたびにブラウザを解放し、以前接続していた機能を次々と動作させる必要があり、これには多くの時間がかかる.
この場合、低コストで迅速にテストできる方法がユニットテストです.
💎 テストの種類
🔹 Testing Pyramid
テストPyramidはGoogle Test Automation Conferenceが提案したモデルで、システムをテストする際に方法を3つに分けます.また,各試験に必要な比重はピラミッドの形で区別できる.
🔹 E2E / UI Testing
End-To-End Testing
🔹 Integration Testing
🔹 Unit Testing
🔸 長所
他のテストコストより
-人はスクリプトで一度に自動的に実行できるからです.
-ユニットテストを使用すると、迅速な複数回の導入が可能になります.
-新しい機能の実装時にユニットテストが作成されている場合は、長期的なメンテナンスが容易です.
-ユニットテストを作成すると、テストに合格したコードのエラーを減らすことができます.(実際、ほとんどのエラーは、エラーが発見されたときにユニットテストがないため発生します.)
💎 Unit Testはどうする?
🔹 Jest
JestはJavaScriptテストライブラリです.
CRAには基本的にJestがあるので簡単に使えます.
🔹 拡張子
.test
、.spec
を貼り付けて書きます.例)
utils.test.js
🔹 テストファイルの場所
🔹 テストコード-関数
-最初のパラメータ:テストを記述する文字列値
// utils.test.js
import { addTwoNumbers } from './utils';
describe('utils.js 파일', () => {
describe('addTwoNumbers 함수 테스트', () => {
test('인자가 2, 3 이라면 5가 반환된다', () => {
expect(addTwoNumbers(2, 3)).toBe(5);
});
test('인자가 2 이라면 2가 반환된다', () => {
expect(addTwoNumbers(2)).toBe(2);
});
});
});
- describe함수는 테스트들을 그룹핑한다.
- test 함수는 개별적인 테스트들을 설명한다.
-実際のテストを行うコード
例)toBeGreaterThan-比較値が結果値より大きいかどうかを決定する
to ThrowError-エラーが発生したかどうかを判断
必要な関数は、公式ドキュメントを参照して使用できます.
🔹 テストの実行
npm test
プロジェクトディレクトリにあります.test,.spec接尾辞付きのすべてのファイルを見つけ、テストして結果を出力します.自分でやろう
管理クエリーの関数を使用する前に、ユニットテストを行いました.
予想通りの値段?以外は、
受信して実際に返される値は?含まれるエラー.
Reference
Reference
この問題について(Unit Testとは?), 我々は、より多くの情報をここで見つけました https://velog.io/@gygy/Unit-Testテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol