coffeescript 및 chai와 함께 모카를 설정하려고합니다.모든 테스트 전에 파일을 가져올 수 없습니다.
테스트/_helper.coffee
path = require 'path'
AppDir = path.resolve("#{__dirname}/../src/app")
chai = require('chai')
should = chai.should()
factories = require('chai-factories')
chai.use(factories)
이 내가 APPDIR의 variabel에 액세스 할 수 있도록입니다 : 모든 파일이 테스트를 포함하기 전에, 나는 다음과 같은 파일을 포함합니다. 따라서 파일을 필요로 할 때 app 디렉토리의 전체 경로를 지정할 필요가 없습니다.
시험/응용 프로그램/setup-test.coffee
describe 'Setup instance', ->
it 'should be a object', ->
setup = require "#{AppDir}/setup"
setup.should.be.a('object')
나는 다음과 같은 설정 시도
: 그래서 같은
추가 된 _hellper.coffee에 모카 명령 줄 옵션 :
./node_modules/.bin/mocha --require coffee-script --require test/_helper.coffee --compilers coffee:coffee-script --recursive --reporter spec test
등을 :
./node_modules/.bin/mocha --require coffee-script --compilers coffee:coffee-script --recursive --reporter spec test/_helper.coffee test
내가 테스트를 실행하면 내가 사용하는 적 방법, 나는 다음과 같은 오류가 무엇
require '../_helper.coffee'
: 여기
Setup instance
1) should be a object
✖ 1 of 1 test failed:
1) Setup instance should be a object:
ReferenceError: AppDir is not defined
at Context.<anonymous> (/Users/ivotrompert/Dropbox/projects/nodejs/getWallpapers/test/app/setup-test.coffee:8:28)
at Test.Runnable.run (/Users/ivotrompert/Dropbox/projects/nodejs/getWallpapers/node_modules/mocha/lib/runnable.js:184:32)
at Runner.runTest (/Users/ivotrompert/Dropbox/projects/nodejs/getWallpapers/node_modules/mocha/lib/runner.js:300:10)
at Runner.runTests.next (/Users/ivotrompert/Dropbox/projects/nodejs/getWallpapers/node_modules/mocha/lib/runner.js:346:12)
at next (/Users/ivotrompert/Dropbox/projects/nodejs/getWallpapers/node_modules/mocha/lib/runner.js:228:14)
at Runner.hooks (/Users/ivotrompert/Dropbox/projects/nodejs/getWallpapers/node_modules/mocha/lib/runner.js:237:7)
at next (/Users/ivotrompert/Dropbox/projects/nodejs/getWallpapers/node_modules/mocha/lib/runner.js:185:23)
at Runner.hook (/Users/ivotrompert/Dropbox/projects/nodejs/getWallpapers/node_modules/mocha/lib/runner.js:205:5)
at process.startup.processNextTick.process._tickCallback (node.js:244:9)
그리고 내 MAKE입니다와 나는 정상이 setup-test.coffee에서 필요로 시도 누군가가 내가 테스트를 실행하는 방법을 알고 싶다면 파일 :
Makefile을
REPORTER = spec
DEFAULT_COMMAND = ./node_modules/.bin/mocha --require coffee-script --ui bdd --compilers coffee:coffee-script --recursive --growl --reporter
check: test
test:
@NODE_ENV=test $(DEFAULT_COMMAND) $(REPORTER)
test-watch:
@clear
@NODE_ENV=test $(DEFAULT_COMMAND) $(REPORTER) --watch
coverage:
@jscoverage --no-highlight src src-cov
@SRC_COV=1 $(DEFAULT_COMMAND) html-cov > coverage.html
@rm -rf src-cov
ifeq ($(shell uname), Darwin)
@open coverage.html
else
@xdg-open coverage.html &> /dev/null &
endif
.PHONY: test
수있는 사람하시기 바랍니다 도와주세요, 고마워요.
하나의 파일에는이 파일을 사용하지 않지만 다중 파일에는이 파일을 사용하고 싶습니다. 따라서 완벽한 솔루션입니다. 고맙습니다 –