2016-09-13 1 views
0

일부 전역 변수에 도달하려고합니다. 예 :각도기 및 재스민을 사용하여 스펙에서 전역 변수를 사용하는 방법

var date = 0; 

it('must set a value', function(){ 
    date = 5; 
}); 

it('must compare', function(){ 
    expect(date).toBe(5); 
}); 
+0

모두 해당 날짜에 액세스해야합니다. 나는 날짜가 describe 함수의 var 내부라고 가정합니다. 이게 작동하지 않는 바이올린을 가지고 있습니까? –

+0

@ScottFanetti 아니요, 그냥 함수에서 값 (5)을 가져오고 (값을 설정해야 함) 다른 함수에서 비교해야합니다 (비교해야 함) – paulotarcio

+0

이 코드를 사용할 때 실제로 어떻게되는지, 그리고 무엇을 기대합니까? 일어날 것인가? – YakovL

답변

0

it 블록들은 서로 의존 할 것이다. 첫 번째는 실행이 비동기 적이기 때문에 예기치 않은 행동으로 인도 할 것입니다. 그리고 두 번째 단위 테스트는 준비가되어 있고 독립적이기 때문에 쉬워야합니다 ... 그래서 하나가 실패하면 실제로 실패한 것을 알게됩니다 (즉, 다른 단위 블록을 조사 할 필요가 없습니다).

코드로 달성하려고하지만 다음과 같은 코드를 원하는 것으로 생각됩니다.

describe('MyTestSpec', function() { 

    var date = 0; 

    beforeEach(function() { 
     //Using beforeEach will actually assume that date will be set to 5 
     //before the execution of your it-block. 
     date = 5; 
    }); 

    it('check if date is 5', function() { 
     expect(date).toBe(5);  
    }); 
}); 
관련 문제