CoffeeScript 단원 테스트를 위해 chai.js와 함께 mocha를 사용하고 있습니다. 나는 커피 파일을 테스트 폴더에 컴파일하고 모카 테스트를 실행하기 위해 PhantomJS를 시작하는 불만스러운 과제를 가지고있다.Chai.js가 테스트에서 실패한 어설 션을 지정하지 않았습니다.
모든 것이 잘 작동하지만 chai.js는 어떤 테스트가 실패하고 있으며 예상 값과 실제 값이 무엇인지 나타내는 것만으로 테스트 케이스에서 어떤 어설 션이 전달되지 않는지 지정하지 않습니다. 어설 션 또는 적어도 실패한 어설 션의 인덱스를 인쇄하는 좋은 방법이 있습니까? 또한 chai.Assertion.includeStack
을 켜기 만 JavaScript 파일에 CoffeeScript 테스트에 도움이되지 않는 행 번호 만 표시합니다.
FizzBuzzTest.coffee
fizz = new FizzBuzz()
describe "Print numbers from 1 to 100", ->
it "First 10 digits from 1 to 5", ->
result = fizz.do()
arr = result.split(fizz.Delimiter)
expect(arr[0]).to.equal("1")
expect(arr[1]).to.equal("2")
expect(arr[2]).to.equal(fizz.Fizz)
expect(arr[3]).to.equal("3") # this assertion should fail
expect(arr[4]).to.equal(fizz.Buzz)
실행 테스트
$ grunt test
Running "mocha:run" (mocha) task
Testing: Content/runner.html
Print numbers from 1 to 100
✓ First 10 digits from 1 to 5
1) Last 10 digits from 95 to 100
✓ Print FizzBuzz instead of number which is divisible by both 3 and 5
✓ Check number
✓ Check Fizz
✓ Check Buzz
✓ Check FizzBuzz
✓ Check if > 100 then null
✓ Check if < 1 then null
8 passing (113ms)
1 failing
1) Print numbers from 1 to 100 Last 10 digits from 95 to 100:
AssertionError: expected true to be false
at file:///Users/milan/Sites/CoffeeTests/Content/js-libs/chai/chai.js:918
at file:///Users/milan/Sites/CoffeeTests/Content/js-libs/chai/chai.js:1159
at file:///Users/milan/Sites/CoffeeTests/Content/js-libs/chai/chai.js:3563
>> 1/9 tests failed (0.11s)
Warning: Task "mocha:run" failed. Use --force to continue.
Aborted due to warnings.
질문 : 어디 AssertionError를 대한 자세한 구체적으로 chai.js을 설정하는 좋은 방법이 있나요 일어난?
처럼 : AssertionError를 :. 라인에 기대 거짓으로 진실 예상 (편곡 [3]) to.equal ("3")
감사합니다. 아무도 커피 스크립트 코드 chai.Assertion.includeStack
작업 좋게 만들기 위해보다 정교한 해결책을 제공하지 않는 경우
감사합니다. chai.js가 자동으로 어설 션을 추가 할 수 있다면 좋을 것입니다. –