Mocha 및를 사용하여 기본 테스트 빌드 Chai
Mocha 및 를 사용하여 기본 테스트를 빌드하려면 Chai 다음 단계를 따르십시오.
1. 설치 Mocha 및 Chai: npm(Node Package Manager)을 사용하여 Node.js 프로젝트를 Mocha 설치 합니다. Chai 프로젝트 디렉터리에서 다음 명령을 실행합니다.
npm install mocha chai --save-dev
2. 테스트 파일 만들기: 새 파일(예:)을 만들고 사용할 test.js
다음 선언을 가져옵니다. Mocha Chai
const chai = require('chai');
const expect = chai.expect;
describe('Example Test Suite',() => {
it('should pass the test',() => {
expect(2 + 2).to.equal(4);
});
});
3. 테스트 실행: 터미널을 열고 mocha
명령을 실행하여 테스트를 실행합니다. 모든 것이 순조롭게 진행되면 터미널에 결과가 표시됩니다.
이 기본 테스트는 Mocha and를 사용하여 Chai 간단한 계산을 확인합니다. 위의 예에서 작업 결과가 2 + 2
와 같아야 하는지 확인합니다 4
. 결과가 정확하면 테스트가 통과됩니다.
describe
및 블록을 추가하여 it
더 복잡한 테스트를 빌드하고 소스 코드의 다른 부분을 확인할 수 있습니다.
테스트를 위해 또는 와 Chai 같이 에서 제공하는 다른 어설션 방법을 사용할 수도 있습니다. 구체적인 사용법은 선택 사항과 테스트 코드를 구성하려는 방법에 따라 다릅니다. assert
should
어설션 및 쿼리를 사용하여 함수 결과 확인
Mocha 테스트를 위해 및를 사용할 때 Chai 어설션 및 쿼리를 사용하여 함수 결과를 확인할 수 있습니다. 다음은 어설션 및 쿼리를 사용하여 함수 결과를 확인하는 몇 가지 예입니다.
1. expect
어설션과 to.equal
쿼리를 사용하여 특정 값을 반환하는 함수의 결과를 확인합니다.
const result = myFunction();
expect(result).to.equal(expectedValue);
2. `expect` 어설션과 to.be.true
또는 to.be.false
쿼리를 사용하여 부울 값을 반환하는 함수의 결과를 확인합니다.
const result = myFunction();
expect(result).to.be.true; // or expect(result).to.be.false;
to.be.null
3. null 또는 정의되지 않은 값을 반환하는 함수의 결과를 확인하려면 `expect` 어설션 및 to.be.undefined 쿼리를 사용하십시오 .
const result = myFunction();
expect(result).to.be.null; // or expect(result).to.be.undefined;
4. expect
어설션 및 to.include
쿼리를 사용하여 값이 배열 또는 문자열에 포함되어 있는지 확인합니다.
const result = myFunction();
expect(result).to.include(expectedValue);
5. expect
어설션과 to.have.lengthOf
쿼리를 사용하여 배열 또는 문자열의 길이를 확인합니다.
const result = myFunction();
expect(result).to.have.lengthOf(expectedLength);
Mocha 이러한 예는 어설션 및 쿼리를 사용 하고 Chai 함수 결과를 확인하는 여러 가지 방법 중 일부에 불과합니다. 프로젝트의 테스트 요구 사항에 따라 적절한 어설션 및 쿼리를 사용자 지정하고 사용할 수 있습니다.
성공 및 실패 테스트 사례 만들기
Mocha 및 를 사용하여 테스트 사례를 작성할 때 Chai 성공 시나리오와 실패 시나리오를 모두 다루는 것이 중요합니다. 다음은 성공 시나리오와 실패 시나리오 모두에 대한 테스트 사례를 만드는 예입니다.
1. 성공적인 테스트 케이스:
describe('myFunction',() => {
it('should return the expected result',() => {
// Arrange
const input = // provide the input for the function
const expected = // define the expected result
// Act
const result = myFunction(input);
// Assert
expect(result).to.equal(expected);
});
});
2. 실패 테스트 사례:
describe('myFunction',() => {
it('should throw an error when invalid input is provided',() => {
// Arrange
const invalidInput = // provide invalid input for the function
// Act and Assert
expect(() => myFunction(invalidInput)).to.throw(Error);
});
});
성공적인 테스트 사례에서는 함수에 대한 입력과 예상 결과를 정의합니다. 그런 다음 입력으로 함수를 호출하고 결과가 예상 값과 일치하는지 어설션합니다.
실패 테스트 사례에서는 함수에 잘못된 입력을 제공하고 오류가 발생한다고 어설션합니다. 이렇게 하면 함수가 잘못된 입력 또는 오류 조건을 적절하게 처리할 수 있습니다.
테스트 사례에서 성공 시나리오와 실패 시나리오를 모두 다루면 코드를 철저히 테스트하고 다양한 상황을 적절하게 처리할 수 있습니다.