나는 테스트 오염을 받고 있습니다. 개별적으로 실패한 테스트를 실행하면 통과합니다. 모두 함께 실행하면 오류가 발생합니다. 오류는 데이터베이스와 관련이 없습니다. 오류를 이해할 수 없습니다. 페이지 :Spock/Geb 테스트 오염
errorModule (wait: true) { module ErrorModule }
errorModule : 예를 들어 정적 콘텐츠 = { 오류 (필수 : 거짓) {$ ("h3.error")} }
사양 :
assert page.errorModule
예외 : org.openqa.selenium.NoSuchElementException : 요소를 찾을 수 없습니다. { "method": "태그 이름", "selector": "html"}
모듈의 내용이 필요 없기 때문에 이해할 수 없습니다. 또한, 다른 테스트의 오염으로 인해이 문제가 발생할 수 있습니까? 내 테스트는 너무 많아 목록에 올 수 없습니다.
유일한 아이디어는 내 프로그램이 아닌 쿠키를 설정하는 것입니다. "1361461306476"및 "1.1361461306.1.1.utmcsr = (직접) | utmccn = (직접) |"와 같은 비밀 값이있는 "ba743b", "kvcd", "kn_ai"등과 같은 이상한 이름의 쿠키가 있습니다. utmcmd = (없음) ". 누구든지 이러한 쿠키의 출처와 테스트가 끝날 때 쿠키를 삭제하는 방법을 알고 있습니까? 그것은 심지어 중요합니까? 쿠키는 세션 쿠키가 아니며 만료 날짜가 있습니다. 내 코드가 생성한다고 생각하지 않는 쿠키를 삭제하는 방법을 모르겠습니다. 그러나 이것은이 일과 관련이 없습니다.
'page.errorModule'은 필수입니다. 여러분은'errorModule.error'를 필수적이지 않도록 설정했습니다. OTOH 당신이 이름 엔지니어를 가지고 있으면 좋을 것입니다. –
하지만 콘텐츠가 필요하지 않아서 중요하지 않을 수도 있다고 생각했습니다. 저를 혼란스럽게하는 것은 이것이 푸른 달에 한 번만 발생하는 것이지 모든 페이지 호출을 위해서가 아니라는 것입니다. errorModule의 내용은 거의 존재하지 않습니다. 귀하의 의견에 감사드립니다. errorModule (wait : true, required : false)을 시도하고 page.errorModule을 선언하겠습니까? –