【发布时间】:2015-08-19 09:37:22
【问题描述】:
您好,在 Angular 应用程序中,我有一个 Openlayers3 地图,在该地图上我有一个代表建筑物的图层。在我的测试中,我试图点击其中一个建筑物,它会触发一个带有链接到该建筑物的图像的侧面板。
问题是我的测试似乎只在 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
亲切的问候
【问题讨论】:
标签: javascript angularjs selenium protractor karma-jasmine