2014-06-10 19 views
5

Açısal uygulamasında, yanında nav bağlantısı olan, tıklandığında sayfanın eşleşen öğeye kaydırılacağı bir sayfam var.Kaydırma testi

E2e testini bu ileticide nasıl yazarım? "İlk görünür h1'i yakala" gibi bir şey mi var?

cevap

-1

Sen sipmly bir kaydırma aşağı işlevi kullanabilirsiniz:

$$('h1').first().getText().then(function (h1Txt) { 
    expect(h1Txt).toEqual('Correct h1 text'); 
}); 

veya kullanın:

var filter = browser.findElement(by.id('idvalue')); 
var scrollIntoView = function() { 
arguments[0].scrollIntoView(); 
} 
browser.executeScript(scrollIntoView, filter); 
+0

Tam olarak aradığım şey bu değil. Bir link tıklandığında sayfa otomatik olarak kaydırılır ve kaydırma pozisyonunun doğru olduğundan emin olmak için kontrol etmek istiyorum. – bioball

0

Böyle bir şeyle sayfasında ilk h1 elemanı kapmak gerekir doğru h1'i bulmak için belirli bir dizin:

$$('h1').then(function (h1tagList) { 
    var h1Text = h1tagList[0].getText(); 
    expect(h1Text).toEqual('Correct h1 text'); 
}); 

Sayfada göründüğü anda görünmüyorsa metni okumak için elemanın erişilememesi gibi bir hata atması veya böyle bir şey olması gerekir.

3

Bunun için javascript'in window.pageYOffset'ini kullanabilirsiniz. İşte ben kendi test case birinde yaptık edebilirsiniz: 100 Benim beklenen pozisyon olduğunu

browser.driver.sleep(2000); 
    browser.executeScript('return window.pageYOffset;').then(function(pos) { 
     expect(pos).to.be.at.most(100); 
    }); 

.

Not: Yasemin yerine mocha ve chai kullanıyorum. Yani, son satırı buna göre değiştirin. Ayrıca kaydırma işlemimin tamamlanması için 2 saniye bekliyorum.

+1

sadece günü burada kurtardınız. :) – germanio