例如,我有此应用程序的html代码:
<div class="swipe-cover" ng-swipe-left="func()"></div>
以及这样的测试:
it('test', function() {
browser.executeScript( 'angular.element(".swipe-cover").triggerHandler("swipeleft")' );
});
但这是行不通的。
如果我使用“swipeleft”的“click”指令,则可以使用。
如何触发e2e测试的“swipeleft”事件?
最佳答案
使用一系列 Action 可以更好地模拟手势:
driver.actions()
.mouseDown(element(by.css('.filter-editorial-rating .ngrs-handle-max')))
.mouseMove({x: -50, y: 0}) // try different value of x
.mouseUp()
.perform();
如果-50有效,请参见https://github.com/angular/angular.js/blob/master/src/ngTouch/directive/ngSwipe.js#L74以帮助您确定正确的值。
关于angularjs - 如何在e2e测试中触发 'swipeleft'事件( Protractor ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31317690/