제가 개발 중인 애플리케이션에서는 setInterval과clearInterval을 사용합니다. ClearInterval 메소드를 모니터링하여 호출되는지 확인하고 싶습니다. 제가 실제로 하고 있는 일은 다음과 같습니다.
beforeEach(() => { cy.clock(새 날짜()) }) it('테스트 시나리오' => { const fn = cy.spy(document.defaultView, 'clearInterval') //fn = cy.spy(window, 'clearInterval')도 시도했습니다. ... ... ... //'then' 섹션에 들어갈 때 ClearInterval 함수가 호출되지만 스텁에서는 아직 호출되지 않았다고 보고합니다. cy.tick(30000).then(() => { 기대(fn).to.have.been.calledOnce }) }) afterEach(() => { cy.clock().invoke('복원') })
위 코드 조각의 예상 어설션이 실패했습니다. 저는 그것이 통과할 것으로 예상합니다. 스파이 초기화에 대한 내 논리가 유효합니까|올바른가요? 위 문제에 대한 도움을 주시면 대단히 감사하겠습니다.
Cypress는 테스트와 애플리케이션에서 다양한
으아악window
。cy.spy(window...
使用的是测试窗口,但要对应用程序窗口进行监视,您需要使用cy.window()
명령을 사용합니다.하지만 애플리케이션의 시간 제한 기능을 제어할 수 있도록
cy.clock()
将clearInterval()
가 프록시에 배치되어 모니터링하지 못할 수도 있기 때문에 또 다른 복잡함이 있을 수 있습니다.그래도 제대로 작동하지 않는 경우
으아악cy.clock()
반환 값을 받아 통화 정보가 첨부되어 있는지 확인하시기 바랍니다.또는
으아악clearInterval
프록시되지 않도록 지정