나는이 모카 모양이를 좋아하는 테스트 파일 :
var expect = require('chai').expect
var muting = require('../muting')
describe('muting', function () {
describe('init()', function () {
it('should inject an object into twitter', function () {
var twitter = 'twitter'
muting.init(twitter)
expect(muting.twitter).to.equal(twitter)
})
})
})
내가 실행하면 mocha
CLI에서, 그것은 성공적으로 테스트를 실행합니다.
실행하면 standard
( JavaScript Standard Style 의 실행 파일 ) Mocha의 프레임 워크 기능에서 다음과 같은 오류가 발생합니다.
standard: Use JavaScript Standard Style (https://github.com/feross/standard)
c:\..\test\index.js:5:0: 'describe' is not defined.
c:\..\test\index.js:6:2: 'describe' is not defined.
c:\..\test\index.js:7:4: 'it' is not defined.
표준이 이러한 기능에 대해 불평하지 않도록하는 가장 깨끗한 방법은 무엇입니까?
답변
실제로 package.json의 모든 단일 전역 변수를 나열 할 필요는 없습니다.
대신 다음과 같이 환경을 지정할 수 있습니다.
"standard": {
"env": [ "mocha" ]
}
출처 : 공식 ESLint 구성 문서 .
답변
내 편집 .eslintrc
하고 env 섹션에 mocha를 추가 하는 것을 선호합니다 .
...
"env": {
"commonjs": true,
"node": true,
"mocha": true
},
...
이런 식으로 내 package.json
파일이 깨끗하게 유지되고 eslint 용 vscode 플러그인이 더 잘 이해합니다.
답변
eslint의 주석 구성은 단일 파일에 대해 훌륭하게 작동하지만 표준 구성을 사용 하여 프로젝트를 수행 하는 것을 선호합니다 . 예package.json
globals
{
"name": "my-package",
"version": "1.0.0",
"standard": {
"globals": [
"describe",
"context",
"before",
"beforeEach",
"after",
"afterEach",
"it",
"expect"
]
}
}
답변
eslint의 경우 test_file.js 시작 부분에이 줄을 사용하십시오.
/* eslint-env mocha */
답변
웹 작업자 와 동일한 솔루션을 사용할 수 있습니다.
/* global describe it */
var expect = require('chai').expect
var muting = require('../muting')
describe('muting', function () {
describe('init()', function () {
it('should inject an object into twitter', function () {
var twitter = 'twitter'
muting.init(twitter)
expect(muting.twitter).to.equal(twitter)
})
})
})
답변
Nick Tomlin 이 지적한대로 전역을 선언하면됩니다.
소스 또는 프로젝트의 다른 부분에 대해 테스트에 대한 전역이 다르기 때문에 명령 줄에 넣는 데 사용합니다.
테스트를 위해 우리는
standard --global describe --global it test/
내 프로젝트의 다른 곳에서 jQuery를 사용하는 코드를 린트하고 싶습니다.
standard --global $ src/client/
보너스 팁
Syntastic과 함께 vim을 사용하는 경우 .vimrc 에 추가 할 수 있습니다.
let b:syntastic_checkers = ['standard']
let g:syntastic_javascript_standard_args = "--global $ --global it --global describe"