2017-09-15 13 views

답변

1

농담으로 당신은 이런 식으로 할 수 있습니다. jestjs을 사용하고 있다고 가정합니다. 기능에 대한 이해에 따라 다른 테스트 조건을 확실히 추가 할 수 있습니다. 여기

+0

좋은 예 ... 내 투표가 있습니다 .-) – GhostCat

+0

감사합니다. @ Andreas Köberle. 그것은 작동하며 jest를 사용하여 단위 함수를 테스트하는 방법을 알고 있습니다. –

1
it('checks calculations', function() { 
    var calculate = require('./example.js'); 
    expect(calculate(1, -1).sum).toBe(0); 
    expect(calculate(1, -1).sub).toBe(2); 
}); 

파일을 저장하고 NPM 테스트를 사용

function calculate(a, b) { 
    var sum = a + b; 
    var sub = a - b; 
    return { sum: sum, sub: sub }; 
} 
+0

@ 감사합니다. 그것은 작동하며 jest를 사용하여 단위 함수를 테스트하는 방법을 알고 있습니다. –

0

아주 다른 답 : 테스트 같은 코드 로 큰 문제는 수동으로은 당신이 다른 경우를 포함하는 충분히 테스트를 쓸 때 얘기하기 어려운 것이 사실이다.

대체 접근법 : 예상 결과 만 지정하는 대신 테스트 단계에서 적용해야하는 계약 계약을 확인하십시오.

그런 다음 JSVerify과 같은 빠른 검사 기반 프레임 워크 중 하나를 사용합니다. 도구에 규칙을 부여하면 도구가 임의의 데이터를 만들고 테스트 사례를 실행합니다. 그리고 계약 위반을 발견하면 테스트 입력을 "최소화"하려고 시도합니다. 결국 "이 데이터 x, y, z를 사용할 때 규칙 A를 위반했습니다"라는 메시지가 나타납니다.

"정상적인"TDD 및 단위 테스트와 비교하면 매우 다른 방법이지만, 특히 이러한 종류의 기능을 수행하는 경우 매우 효과적인 추가 작업이 될 수 있습니다.

+0

멋진 제안을 해주신 고맙습니다. –

+0

대단히 환영합니다. 분명히 Andreas의 대답이 받아 들일 수있는 첫 번째 선택이 될 것입니다.하지만 어쩌면이 대답을 기억할 것입니다. 그리고 15 명의 담당자에게 연락하고 upvote 권리를 얻은 다음에도 도움이되는 자료를 upvote하십시오. – GhostCat