2014-10-03 3 views
3

Ember 앱을 테스트 중이며 테이블 안에 링크가 있습니다.Ember.js 테스트 : <a>을 따르십시오.

내가 선택하여 링크를 얻을 수 있습니다 :

내 시험에서
$('tr:nth-child(1) td:nth-child(3) a') 

내가 가진 : 내가 링크 아니다 console.log(currentURL());을 수행 한 후

click($('tr:nth-child(1) td:nth-child(3) a')); 

그러나 위의 클릭이 있어야한다고 나를 데려 갔다.

클릭하는 링크와 관련하여 구체적으로 설명해야합니까? 또는 클릭을 잘못 사용하고 있습니까? 아니면 다른 테스트 도우미를 사용해야합니까?

+0

해결책을 찾았습니까? – ShivamD

+0

나는 그렇지 않았다. 문제를 해결하기 위해 뭔가 다른 일을했지만 지금은 무엇을 기억할 수 없습니다. –

답변

0

클릭하면 비동기 방식이므로 결과를 보려고 시도하기 전에 완료 될 때까지 기다려야합니다.

click($('tr:nth-child(1) td:nth-child(3) a')); 
andThen(function(){ 
    console.log(currentURL()); 
}); 

또는

click($('tr:nth-child(1) td:nth-child(3) a')).then(function(){ 
    console.log(currentURL()); 
}); 
+0

나는 첫 번째 제안을 시도하고 다시 시도했지만 똑같은 일이 발생합니다. 링크의 URL로 이동하지 않습니다. 두 번째는 아무 것도 반환하지 않으며 console.log는 트리거되지 않습니다. 나는 경보에 넣었고 활성화되지도 않았다. 테스트에서 Object not found라고 표시됩니다. –

+1

엠버 앱 밖에 있습니까? – Kingpin2k

+0

다른 테스트와 함께 테스트 스위트에 있습니다. –

0

나는이 정확한 문제가 있습니다. Ember 앱에서 태그를 클릭하면 예상대로 모달 대화 상자가 나타납니다. 이 모달을 작성하는 테스트에서 아무 것도 작동하지 않는 것 같습니다. JS 콘솔에

Ember.$('#id-of-tag').click(); 

을 입력하면 모달이 표시됩니다. 나는 그것을 시험에 붙여 넣고 아무 일도 일어나지 않는다. 클릭 ('(# id-of-tag) [0])을 시도했습니다.

Ember 2.7.3을 사용하고 있지만 곧 2.12로 바뀝니다.