2017-09-20 11 views
11

मेरी यूआई परीक्षण के कुछ 9 Xcode के उन्नयन के बाद से संदेशXCTest के साथ UI तत्वों पर टैप करते समय मैं NSInternalInconsistencyException से कैसे बच सकता हूं?

गतिविधि इसके दायरे

पूरा कर लिया है के बाद नहीं किया जा सकता के साथ एक NSInternalInconsistencyException फेंकने शुरू कर दिया है

समस्या तब होती है जब मैं एक पर tap() फोन XCUIElement। मैं देख सकता हूं कि तत्व एक मान्य बटन है, जो सक्षम है।

इस पर फिक्सिंग या काम करने पर कोई भी मदद की सराहना की जाएगी!

अपवाद के लिए स्टैक ट्रेस के शीर्ष है:

0 CoreFoundation      0x00000001035ad1cb __exceptionPreprocess + 171 
1 libobjc.A.dylib      0x0000000102f0ff41 objc_exception_throw + 48 
2 CoreFoundation      0x00000001035b2362 +[NSException raise:format:arguments:] + 98 
3 Foundation       0x00000001029b4089 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 193 
4 XCTest        0x00000001027d4018 -[XCActivityRecord _synchronized_ensureValid] + 153 
5 XCTest        0x00000001027d3b0b -[XCActivityRecord _synchronized_addAttachment:] + 39 
6 XCTest        0x00000001027d3c98 -[XCActivityRecord addAttachment:] + 37 
7 XCTest        0x00000001027c0935 -[XCActivityRecord(UITesting) attachAutomaticScreenshot] + 265 
8 XCTest        0x00000001027f84b3 __43-[XCUIElement resolveHandleUIInterruption:]_block_invoke + 1465 
9 XCTest        0x0000000102814788 -[XCTContext _runActivityNamed:type:block:] + 185 
10 XCTest        0x00000001027f7eed -[XCUIElement resolveHandleUIInterruption:] + 139 
11 XCTest        0x000000010282b5d1 __63-[XCUIElement(XCUIElementEventSynthesis) _dispatchEvent:block:]_block_invoke + 81 
12 XCTest        0x0000000102814788 -[XCTContext _runActivityNamed:type:block:] + 185 
13 XCTest        0x000000010282b500 -[XCUIElement(XCUIElementEventSynthesis) _dispatchEvent:block:] + 315 
14 XCTest        0x000000010282d242 -[XCUIElement(XCUIElementTouchEvents) tap] + 
+3

स्रोत कोड जहां अपनी गतिविधि परिभाषित किया गया है पोस्ट करें। – Oletha

उत्तर

10

Xcode 9 में, इस XCUITest और नए Xcode 9 मुख्य थ्रेड चेकर के बीच एक बग के कारण हो सकता है। अधिक जानकारी this blog post में हैं।

अस्थायी रूप से, इस मुद्दे को हल करने के लिए जब तक एप्पल यह ठीक करता है अपनी योजना की टेस्ट खंड में मुख्य थ्रेड जांचकर्ता को अक्षम:

enter image description here

0

मैं तत्व को बनाए रखना और सिर्फ आगामी कॉल के लिए यह करने के लिए एक ही संदर्भ का उपयोग करके इस फिक्सिंग समाप्त हो गया।

XCUIElement *searchBar = self.app.searchFields[@"Search"]; 
[searchBar tap]; 
[searchBar typeText:@"Test Guy"]; 
संबंधित मुद्दे

 संबंधित मुद्दे