그럼 테스트를 실행 해 봅시다.
- 사용
karma
: 테스트를 실행하기위한 당신은 몇 가지 옵션이 있습니다. 카르마는 자바 스크립트 테스트 러너입니다. 실제로 실행하고자하는 모든 테스트 파일을 karma.config.js
내부에 지정하면 모든 테스트가 실행됩니다. 코드를 변경할 때마다 테스트를 실행할 수있는 watch
기능이 있습니다.
- node.js를 사용하십시오.
package.json
파일의 스크립트 속성에서 test
명령을 지정하고 해당 스크립트에 명령을 연결하여 모든 테스트에 대해 모카를 실행합니다. 그런 다음 입력 만하면 테스트를 실행할 수 있습니다. npm test
- bash를 사용하려면 npm 테스트 명령 또는 karma 명령을 실행하기 위해 bash를 사용하는 것이 좋습니다. 이것이 bash를 통해 테스트 시작에 사용할 수있는 가장 쉬운 방법입니다. 또한 언제든지 npm/karma 명령을 통해 테스트를 실행하는 .bat 파일을 설정할 수 있습니다.
- 작업 러너를
Gulp
, Grunt
등으로 사용하십시오. 테스트를 트리거 한 작업을 지정할 수 있습니다. 예를 들어 명령을 제공하는 작업 gulp mytask
내 제안은 지금 바로 node.js를 사용하는 것입니다. 그것은 일을 더 쉽게 만듭니다.
TypeScript는 TypeScrit와 함께 사용할 수 있으며 JavaScript가 필요하지 않습니다. 저는 여러분에게 모카를 chai, chai-as-promised 및 sinon과 통합 할 것을 제안합니다. 차이는 어설 션 라이브러리입니다. Chai-as-promised는 약속과 사인을 테스트하여 기능과 방법을 테스트 할 수있게합니다.
이
는 제가 위에서 말한 테스트 명령을
package.json
의 예입니다 :이 라인으로
"scripts": {
"test": "find ./src -name '*spec.ts' | xargs mocha -r ts-node/register"
}
, 당신은 어떤 말 *spec.ts
에 대한 모든 파일을 실행합니다.통합하는 방법에 대한
"devDependencies": {
"@types/chai": "^3.5.0",
"@types/chai-as-promised": "^0.0.30",
"@types/mocha": "^2.2.40",
"@types/node": "^7.0.12",
"@types/sinon": "^2.1.2",
"chai": "^3.5.0",
"chai-as-promised": "^6.0.0",
"husky": "^0.13.3",
"mocha": "^3.2.0",
"sinon": "^2.1.0",
"ts-node": "^3.0.2",
"typings": "^2.1.1"
}
: 는 TS-노드는 여기 package.json
에 유용한 목록을 포함하도록 명령을 통해 직접 종속성에 대한 ts-node myfile.ts
을 TS를 실행할 수있는 매우 유용 노드 플러그인입니다 당신의 검사 결과 내부 모카, 당신이 후두둑으로 사용할 수있는 스펙 파일의 여기 선언 :이 환매 특약을 살펴보고 시도 할 수
// imports of testing libraries
import * as mocha from 'mocha';
import * as chai from 'chai';
import * as chaiAsPromised from 'chai-as-promised';
import sinon = require('sinon');
// import of the source files to be tested
import Main from './Main'; // an example
// testing inits
chai.use(chaiAsPromised);
const expect = chai.expect;
const assert = chai.assert;
const should = chai.should();
. TypeScript와 위에서 말한 모든 테스트 라이브러리가 포함 된 정말 간단한 프로젝트가 있습니다. 아직 진행 중이며 아직 끝내야 할 시간이 없으므로 기본 README.md도 업데이트되지 않습니다. 그러나 프로젝트를 복제하거나 소스를 다운로드하는 경우, 당신은 내가 위에서 말한 모든 것들의 진짜 파노라마 당신이 당신의 테스트 내에서 사용할 수있는 모든 방법의 그림 가질 수 있습니다
https://github.com/quirimmo/testing-typescript-mocha-chai-sinon
희망을 이 도움! 모든 쿼리에 대해 알려주세요!
두 가지 질문 : 왜 TypeScript를 사용 하나 TypeScript 대신 직접 생성 된 JavaScript를 테스트합니까? 그리고 테스트를 실행하기 위해 bash 파일에 의해 트리거 된 nodejs 애플리케이션을 설정하는 것은 어떻습니까? – quirimmo
@quirimmo "TypeScript를 누가 사용하지만 TypeScript 대신 직접 생성 된 Javascript로 테스트합니까?" 나는 그것이 선택 사항이라는 것을 몰랐기 때문에. "테스트를 실행하기 위해 bash 파일 (셸 스크립트)에 의해 트리거 된 노드 js 응용 프로그램을 설정하는 방법은 무엇입니까?" 나는 단지 시험을하고 싶었다. – leeand00
좋은 점 : D 몇 가지 코드와 예제가 유용 할 수있는 답변을 제공합니다. :) – quirimmo