2014-06-10 13 views
5

Trong ứng dụng góc của tôi, tôi có một trang có các liên kết điều hướng ở bên cạnh, khi được nhấp, hãy cuộn trang xuống phần tử phù hợp.Kiểm tra để cuộn

Làm cách nào để viết kiểm tra e2e cho tính năng này trong thước đo góc? Có cái gì đó như "Lấy đầu tiên có thể nhìn thấy h1" hoặc một cái gì đó như thế?

Trả lời

-1

Bạn sipmly có thể sử dụng một cuộn xuống chức năng:

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

Đó không phải chính xác những gì tôi đang tìm kiếm. Trang sẽ tự động cuộn khi liên kết được nhấp vào và tôi muốn kiểm tra để đảm bảo vị trí cuộn chính xác là – bioball

0

Bạn sẽ có thể lấy các yếu tố h1 đầu tiên đó là trong trang với một cái gì đó như thế này:

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

hoặc sử dụng một chỉ mục cụ thể để tìm đúng h1:

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

Nếu nó không hiển thị trên trang tại thời điểm nó tri es để đọc văn bản nó sẽ ném một lỗi như yếu tố không thể truy cập hoặc một cái gì đó như thế.

3

Bạn có thể sử dụng cửa sổ javascript.pageYOffset for this. Đây là cách tôi đã thực hiện nó trong một trường hợp thử nghiệm của riêng tôi:

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

Ở đâu 100 là vị trí mong đợi của tôi.

Lưu ý: Tôi đang sử dụng mocha và chai thay vì hoa nhài. Vì vậy, chỉ cần thay đổi dòng cuối cùng cho phù hợp. Tôi cũng chờ 2 giây để cuộn xong.

+1

bạn vừa lưu ngày tại đây. :) – germanio

Các vấn đề liên quan