페이지의 특정 지점으로 스크롤 한 다음 페이지에 대한 것들을 주장 할 수 있도록 emberJs 수락 테스트가 필요합니다. 본체 scrollTop 위치 I은 1000Ember 수락 테스트 andThen() 스크롤 이벤트가 완료 될 때까지 기다리지 않습니다.
에있을 필요 108에있을 것이라는
andThen(()=>{
console.log('body', Ember.$('body').scrollTop());
})
인쇄하여 다음
이들 기능 모두
,Ember.$('body').scrollTop(1000);
window.scroll(0,1000);
body scrollTop이 1000 인 순간까지 얻을 수있는 유일한 방법은 지금까지이 콜백을 사용할 때입니다.
Ember.$('body').animate({scrollTop: 1000},() => {
console.log('body', Ember.$('body').scrollTop());
staticWiz.assertHasGoToTopButton(true);
});
여기서 문제는이 콜백이 발생하는 지점까지 테스트 물건이 없다는 것입니다. 나는 아무 것도 주장 할 수 없다.
나는이 콜백 assert.async()과 수행()를 사용하려고하면, 그것은 몸 scrollTop()가 (108)에있을 때 조기에 발생한다 :
const done = assert.async();
Ember.$('body').animate({scrollTop: 1000},() => {
console.log('body', Ember.$('body').scrollTop());
staticWiz.assertHasGoToTopButton(true);
done();
});
나는 반복 제한 시간을 설정하는 경우 스크롤 위치를 확인하는 방법으로, 그것은 단지 108의 동일한 위치에 영원히 머물러 있습니다.
const done = assert.async();
window.scroll(0, 1000);
const checkScroll =() => {
console.log('body', Ember.$('body').scrollTop());
if (Ember.$('body').scrollTop() === 1000) {
staticWiz.assertHasGoToTopButton(true);
done();
return;
}
setTimeout(checkScroll, 1000);
};
checkScroll();
그래서. 어떤 아이디어? 아무도 스크롤을 할 수 없지만 Emberjs 수락 테스트에서 특정 번호가 필요한 경우에 이전에이 작업을 수행 한 사람이 있습니까?
업데이트 : Coworker는 테스트 페이지의 본문이 테스트 페이지의 중첩 된 앱 본문 대신 테스트에 의해 스크롤된다는 것을 깨달았습니다. 앱의 '본문'스크롤 워처는 테스트 페이지의 앱 창 내부에서 스크롤을 선택하지 않습니다. 거기에서 어디로 가야할지 모르겠다.