के साथ आयनिक लोडिंग संवाद की प्रतीक्षा कर रहे हैं समान प्रश्न हैं (नीचे लिंक किए गए हैं) लेकिन कोई भी इस समस्या को हल नहीं करता है। मैं एक आयनिक परियोजना के लिए प्रोटैक्टर परीक्षण लिख रहा हूं। मुझे कभी-कभी परीक्षण निष्पादित करने की आवश्यकता होती है जब एक आयनिक लोडिंग संवाद प्रकट होता है और गायब हो जाता है।प्रोटैक्टर
मैंने ऐप की नंगे हड्डियों और परीक्षणों की आवश्यकता के साथ एक रेपो बनाया है। इसे हल करें और आप समस्या को हल करें (मैं नीचे दी गई समस्या का वर्णन करता हूं): https://github.com/TmanTman/StackoverflowQ। Conf.js. में अपने सिस्टम के लिए बस अपने क्रोम के पथ को अनुकूलित करें।
एक अतुल्यकालिक आयोनिक लोड हो रहा है संवाद मैं सिर्फ एक खाली आयोनिक परियोजना में नियंत्रक में जोड़ने के अनुकरण के लिए:
$interval(function() {
$ionicLoading.show({
template: 'Async ionicLoading',
duration: 5000
});
}, 5000 , 1);
})
मैं, संवाद प्रकट करने के लिए के लिए प्रतीक्षा करने चांदा मिल कुछ परीक्षण करते हैं, के लिए प्रतीक्षा करने की जरूरत है गायब होने के लिए संवाद, और फिर कुछ और परीक्षण करें। मेरी टेस्ट फाइल में मेरा नवीनतम प्रयास है:
it('should only test when ionicLoading appears', function() {
browser.wait(function(){
return element(by.css('.loading-container.visible.active')).isPresent();
}, 10000);
var ionicLoadingText = element(by.css('.loading-container.visible.active')).getText();
expect(ionicLoadingText).toEqual('Async IonicLoading');
})
it('should only test once ionicLoading disappears', function() {
browser.wait(function() {
var deferred = protractor.promise.defer();
var q = element(by.css('.loading-container.visible.active')).isPresent()
q.then(function (isPresent) {
deferred.fulfill(!isPresent);
});
return deferred.promise;
});
expect(1).toEqual(1);
})
मैं सिंक्रोनस नींद फ़ंक्शन का उपयोग करने से बचने की कोशिश कर रहा हूं, क्योंकि मेरा कोड अत्यधिक असीमित है। मैंने अनगिनत विविधताओं की कोशिश की है लेकिन मैं इसे काम नहीं कर सकता। लिंक मैं जानकारी के लिए उपयोग किया है में शामिल हैं:
- Protractor blocking wait
- Asynchronous Testing with Protractor's ControlFlow
- Protractor wait for isElementPresent and click on waited element fails
आपके पास क्या त्रुटियां हैं? क्या संवाद से पहले पहले ब्लॉक में उम्मीद निष्पादित होती है या क्या टाइमआउट त्रुटि होती है? – Dziamid
पहले ब्लॉक पर टाइमआउट त्रुटि: "असफल: 10472ms के बाद समय समाप्त हो गया"। –