[javascript] Chai의 구체적인 예제로 코드 형태를 살펴보는 방법은?
Chai는 JavaScript용 테스트 어설션 라이브러리로, 코드를 테스트하고 결과를 검증하는 데 사용됩니다. Chai는 다양한 스타일을 제공하며, 각 스타일마다 다른 구문과 어설션 방식을 가지고 있습니다. 이제 Chai의 구체적인 예제 코드 형태를 살펴보도록 하겠습니다.
const chai = require('chai');
const { expect } = chai;
describe('Array', function() {
describe('#indexOf()', function() {
it('should return -1 when the value is not present', function() {
const arr = [1, 2, 3];
const result = arr.indexOf(4);
expect(result).to.equal(-1);
});
it('should return the correct index when the value is present', function() {
const arr = [1, 2, 3];
const result = arr.indexOf(2);
expect(result).to.equal(1);
});
});
});
위 예제 코드는 Array
객체의 indexOf()
메서드를 테스트하는 Chai 코드입니다. 코드를 간단히 분석해보면 다음과 같습니다.
chai
라이브러리를 가져오고,expect
변수를 destructuring으로 가져옵니다.describe
함수를 사용하여 테스트 모듈을 만듭니다. 이 예제에서는Array
에 대한 테스트 모듈을 만듭니다.describe
함수 내부에서 다시describe
함수를 사용하여 메서드를 테스트하는 서브 모듈을 만듭니다. 이 예제에서는indexOf()
메서드에 대한 테스트 모듈을 만듭니다.it
함수를 사용하여 실제 테스트 케이스를 구성합니다. 첫 번째 테스트 케이스에서는indexOf()
메서드가 값이 없을 경우 -1을 반환하는지 검증합니다. 두 번째 테스트 케이스에서는 값이 존재할 경우 올바른 인덱스를 반환하는지 검증합니다.expect
구문을 사용하여 테스트 결과를 검증합니다.to.equal()
메서드를 사용하여 기대값과 실제 결과를 비교합니다.
위 예제 코드에서는 Chai의 expect
구문을 사용하여 검증을 수행했습니다. 다른 스타일이나 어설션 방식을 사용하려면 Chai의 문서를 참고하시기 바랍니다.
참고 자료: