가장 작은 테스트의 단위는 테스트 케이스(Test Case) 이고
여러 개의 테스트 케이스가 모여서 하나의 테스트 슈트(Test Suite)를 이룬다.
참조 링크: https://www.testim.io/blog/test-suites-test-cases-hierarchy-explained/
위에서 사용하는 mocha 라이브러리에서는 it
가 하나의 테스트 케이스이다.
it("I'm a test case", function () {
...
});
그리고 describe
가 하나의 테스트 슈트이다.
describe("I'm a test suite", function () {
it("test case 1", function () {
});
it("test case 2", function () {
});
it("test case 3", function () {
});
});
그리고 테스트 슈트를 중첩해서 사용하는 것도 가능하다.
describe("test suite for all the test suites", function () {
describe("test suite 1", function () {
it("test case 1", function () {
});
it("test case 2", function () {
});
it("test case 3", function () {
});
});
describe("test suite 2", function () {
it("test case 1", function () {
});
it("test case 2", function () {
});
it("test case 3", function () {
});
});
});
테스트 코드를 작성할 때
기본적으로는 테스트 케이스마다 '하나의 동작' 또는 '하나의 기능'만 테스트한다는 원칙을 지키는 것이 좋다.