2015-07-09 5 views
9

उदाहरण के लिए, मैं आवेदन के इस एचटीएमएल कोड हैकैसे E2E परीक्षण (चांदा) में 'swipeleft' घटना को गति प्रदान करने

it('test', function() { 
    browser.executeScript('angular.element(".swipe-cover").triggerHandler("swipeleft")'); 
}); 

लेकिन यह 'नहीं करता है टी काम नहीं

यदि मैं 'स्वाइप बाएं' के 'क्लिक' insteaf का उपयोग करता हूं, तो यह काम करता है।

मैं e2e परीक्षणों के लिए 'स्वाइप बाएं' ईवेंट कैसे ट्रिगर कर सकता हूं?

+0

मैं यहां एक स्टैब ले रहा हूं, लेकिन आपने कोशिश की है: .triggerHandler ("touchstart"); – jme11

+0

मैंने कोशिश की है, इसलिए इससे मदद नहीं मिली। –

उत्तर

2

एक इशारा काम बेहतर कार्यों की एक सेरी का उपयोग कर अनुकरण:

driver.actions() 
     .mouseDown(element(by.css('.filter-editorial-rating .ngrs-handle-max'))) 
     .mouseMove({x: -50, y: 0}) // try different value of x 
     .mouseUp() 
     .perform(); 

देखें https://github.com/angular/angular.js/blob/master/src/ngTouch/directive/ngSwipe.js#L74 tou सही मूल्य पता लगाने अगर -50 बाहर काम करता है मदद करने के लिए।

1

यह एक समाधान है जो मैंने पाया।

var card = element(by.css('#card-container')); 

browser.actions() 
    .mouseMove(card, {x: 100, y: 100}) 
    .mouseDown() 
    .mouseMove({x: -200, y: 0}) 
    .perform(); 

browser.sleep(500); 

browser.actions() 
    .mouseUp() 
    .perform(); 
संबंधित मुद्दे