1
喜工作在角应用我有一个Openlayers3地图上,我有这表示建筑物的一层。在我的测试,我想点击这些建筑触发与链接到该建筑物的图像侧面板之一。的mouseMove不使用Selenium和量角器
的问题是,只有在Firefox我的测试似乎并没有工作。我想知道是否有其他人偶然发现了这个问题,如果他们是一个解决方案。
我的猜测是它有事情做与.mouseMove
我的代码:
//我有有一个方法
this.klikOpGebouw = function(gebouwId) {
return browser.executeScript("return angular.element(document.querySelector('#map')).scope().map.custom.getPixelForGebouw(" + gebouwId + ")").then(function(pixel){
return browser.actions()
.mouseMove(element(by.id("map")).getWebElement(), {x: pixel[0], y: pixel[1]})
.click()
.perform();
});
};
而且在我的测试我做一个页面对象:
it('er zijn verschillende afbeeldingen gekoppeld aan het dossier', function() {
mainPage.goTo('admin', 'admin');
var dossierDetailPage = mainPage.dossiers().byIndex(0).openDetail();
browser.waitForAngular();
dossierDetailPage.klikOpGebouw(1);
var gebouwPanel = dossierDetailPage.getGebouwPanel();
expect(gebouwPanel.countAfbeeldingen()).toBe(3);
});
在Chrome和Internet Explorer这个完美的作品。只有在Firefox中,它才会变成fubar。有任何想法吗 ?
Selenium driver : 2.47.1
AngularJS : 1.3.4
karma : 0.12.16
karma-jasmine: 0.2.2
亲切的问候
尝试过但没有骰子。我们检查了点击的像素是否实际上是建筑物的像素,这似乎就是这种情况。我们尝试使用的OpenLayers方法:forEachFeatureAtPixel(像素,功能(功能,层){})方法,但我们从这个方法为我们指定的像素越来越为零的特点。其令人费解的 –
好吧。我从代码中注意到的另一个区别是您使用getWebElement()。我们只是使用这个:element(by.css('div [some name]'));不知道这是否会帮助...... – Tone
试过太多,但没有骰子。我认为这是更基本的东西。因为它只在Firefox中失败 –