Mocha로 Javascript 테스트 - console.log를 사용하여 테스트를 디버깅하려면 어떻게 해야 합니까?
저는 자바스크립트 테스트 러너 "모카"를 사용하고 있습니다.
실패한 테스트가 있으므로 다음을 사용하여 디버깅하려고 합니다.console.log
.
그러나 검정을 실행하면 출력이 없습니다(Mocha의 검정 결과만).모카가 나를 사로잡아 억압한 것 같습니다.console.log
출력!
어떻게 하면 모카가 내 출력물을 보여줄 수 있습니까?(실패한 테스트의 경우)?
편집:
대단히 죄송합니다!console.log
테스트 중에 작동합니다!출력이 억제될 것으로 예상하고 있었고, 제 코드를 제대로 확인하지 못했습니다.응답해 주셔서 감사합니다.그러니까... 그 말은...어쩌면 실제로 합격한 테스트의 출력을 억제하는 것이 좋을까요?음...
관련 노트:사용하고 싶습니다.console.log
왜냐하면 이클립스 디버거를 node.js에 연결하는 데 많은 문제가 있기 때문입니다.
이것을 까다롭게 생각하는 사람은 나뿐입니까?어떻게 node.js를 디버깅합니까?디버거와 함께 또는console.log
진술서?
어떤 모카 옵션을 사용하고 있습니까?
혹시 리포터(-R)나 ui(-ui)가 사용되는 것과 관련이 있는 것은 아닐까요?
console.log(msg);
테스트 실행 중에는 잘 작동합니다. 가끔 약간 바보같기도 하지만요.아마도 테스트 실행의 비동기성 때문일 것입니다.
사용 중인 옵션(mocha.opts)은 다음과 같습니다.
--require should
-R spec
--ui bdd
흠.. 그냥 모카 없이 테스트를 해봤어요. 옵스 그리고.console.log
여전히 작동합니다.
비동기 코드를 테스트하는 경우, 다음을 배치해야 합니다.done()
그 비동기 코드의 콜백에서.REST API에 대한 http 요청을 테스트할 때 문제가 발생했습니다.
당신은 또한 당신의 것을 넣었을지도 모릅니다.console.log
로그 라인이 실행되지 않도록 예상이 실패하고 잡히지 않은 후에 실행됩니다.
나는 문제가 있었습니다.node.exe
테스트 출력과 같은 프로그램mocha
.
저의 경우에는 기본 "node.exe" 별칭을 제거하여 해결했습니다.
Windows용 Git Bash(2.29.2)를 사용하고 있으며 일부 기본 별칭은/etc/profile.d/aliases.sh
,
# show me alias related to 'node'
$ alias|grep node
alias node='winpty node.exe'`
별칭을 제거하려면, 업데이트aliases.sh
아니면 간단히 하라.
unalias node
왜인지 모르겠다.winpty
에 이 부작용이 있습니다.console.info
버퍼링되지만 직접 출력node.exe
사용, 저는 더 이상 stdout 문제가 없습니다.
debug lib를 사용합니다.
import debug from 'debug'
const log = debug('server');
사용:
log('holi')
그런 다음 실행:
DEBUG=server npm test
그게 다야!
언급URL : https://stackoverflow.com/questions/10666349/testing-javascript-with-mocha-how-can-i-use-console-log-to-debug-a-test
'programing' 카테고리의 다른 글
C++에서 C 코드를 사용하는 방법 (0) | 2023.08.15 |
---|---|
JQuery 문자열에 검사가 포함되어 있습니다. (0) | 2023.08.15 |
PL/SQL에서 프로시저나 기능을 위해 언제 가야 합니까? (0) | 2023.07.26 |
iOS 기기(모바일 Safari)의 입력 필드에서 텍스트를 프로그래밍 방식으로 선택 (0) | 2023.07.26 |
jQuery를 사용하여 요소를 자동 높이로 애니메이션화 (0) | 2023.07.26 |