google / EarlGrey

:tea: iOS UI Automation Test Framework
http://google.github.io/EarlGrey/
Apache License 2.0
5.62k stars 742 forks source link

EarlGrey addSubView exception when added to UIVisualEffectView #1287

Open OuterCloud opened 4 years ago

OuterCloud commented 4 years ago

error: -[QNSchemeJumpTest testSchemeJumpWithLogin] : failed: caught "NSInternalInconsistencyException", "<<UIImageView: 0x7fa67cc6ffb0; frame = (0 0; 375 216); userInteractionEnabled = NO; layer = <CALayer: 0x6000001bd5a0>> > has been added as a subview to <UIKBBackdropView: 0x7fa6829891b0; frame = (0 0; 375 216); autoresize = W+H; layer = <CALayer: 0x6000001140a0>> effect=none. Do not add subviews directly to the visual effect view itself, instead add them to the -contentView." ( 0 CoreFoundation 0x000000011c69127e exceptionPreprocess + 350 1 libobjc.A.dylib 0x000000012643bb20 objc_exception_throw + 48 2 CoreFoundation 0x000000011c690ff8 +[NSException raise:format:arguments:] + 88 3 Foundation 0x000000011eeeeb51 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 191 4 UIKitCore 0x0000000128e821ac -[UIVisualEffectView _addSubview:positioned:relativeTo:] + 303 5 EarlGrey 0x000000011b3bcaca -[UIView(GREYAdditions) greyswizzled_addSubview:] + 90 6 libWNSCapDylib.dylib 0x000000011b6f30d9 -[UIView(MISAddSubview) mis_addSubview:] + 56 7 EarlGrey 0x000000011b3cf617 61+[GREYVisibilityChecker grey_imageAfterAddingSubview:toView:]_block_invoke + 103 8 EarlGrey 0x000000011b3cf978 +[GREYVisibilityChecker grey_prepareView:forVisibilityCheckAndPerformBlock:] + 648 9 EarlGrey 0x000000011b3cf4a5 +[GREYVisibilityChecker grey_imageAfterAddingSubview:toView:] + 789 10 EarlGrey 0x000000011b3cedc3 +[GREYVisibilityChecker grey_captureBeforeImage:andAfterImage:andGetIntersectionOrigin:forView:withinRect:] + 3907 11 EarlGrey 0x000000011b3cd955 +[GREYVisibilityChecker grey_percentViewVisibleOnScreen:withinRect:] + 165 12 EarlGrey 0x000000011b3cd3cd +[GREYVisibilityChecker grey_percentElementVisibleOnScreen:] + 237 13 EarlGrey 0x000000011b3cab72 +[GREYVisibilityChecker percentVisibleAreaOfElement:] + 210 14 EarlGrey 0x000000011b3ed017 45+[GREYMatchers matcherForSufficientlyVisible]_block_invoke + 71 15 EarlGrey 0x000000011b3a1af8 -[GREYElementMatcherBlock matches:] + 72 16 EarlGrey 0x000000011b3c5f75 -[GREYBaseMatcher matches:describingMismatchTo:] + 85 17 EarlGrey 0x000000011b38d08a -[GREYAllOf matches:describingMismatchTo:] + 474 18 EarlGrey 0x000000011b38ce39 -[GREYAllOf matches:] + 153 19 EarlGrey 0x000000011b39c883 -[GREYElementFinder elementsMatchedInProvider:] + 1091 20 EarlGrey 0x000000011b3dd1ba -[GREYElementInteraction matchedElementsWithTimeout:error:] + 1610 21 EarlGrey 0x000000011b3e1a79 39-[GREYElementInteraction assert:error:]_block_invoke + 377 22 EarlGrey 0x000000011b4105d4 59-[GREYUIThreadExecutor executeSyncWithTimeout:block:error:]_block_invoke + 68 23 EarlGrey 0x000000011b3c2bfd __77-[GREYRunLoopSpinner grey_drainRunLoopInActiveModeAndCheckCondition:forTime:]_block_invoke + 461 24 EarlGrey 0x000000011b3c38d2 89-[GREYRunLoopSpinner grey_setupObserverInMode:withBeforeSourcesBlock:beforeWaitingBlock:]_block_invoke + 178 25 CoreFoundation 0x000000011c5f3867 CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION + 23 26 CoreFoundation 0x000000011c5ee2fe CFRunLoopDoObservers + 430 27 CoreFoundation 0x000000011c5ee863 CFRunLoopRun + 1235 28 CoreFoundation 0x000000011c5ee066 CFRunLoopRunSpecific + 438 29 EarlGrey 0x000000011b3c26da -[GREYRunLoopSpinner greydrainRunLoopInActiveModeAndCheckCondition:forTime:] + 634 30 EarlGrey 0x000000011b3c20a5 -[GREYRunLoopSpinner spinWithStopConditionBlock:] + 565 31 EarlGrey 0x000000011b40fd4a -[GREYUIThreadExecutor executeSyncWithTimeout:block:error:] + 1258 32 EarlGrey 0x000000011b3e0e11 -[GREYElementInteraction assert:error:] + 1969 33 EarlGrey 0x000000011b3e278d -[GREYElementInteraction assertWithMatcher:error:] + 125 34 QNEGTest 0x000000014718f50d -[QNCommonUse assertNotNilWithMatcher:failInfo:] + 429 35 QNEGTest 0x00000001472a5766 -[QNSchemeJumpTest assertBottomBarVisible] + 214 36 QNEGTest 0x00000001472a5969 -[QNSchemeJumpTest testSchemeJumpWithLogin] + 217 37 CoreFoundation 0x000000011c69820c invoking + 140 38 CoreFoundation 0x000000011c6953af -[NSInvocation invoke] + 319 39 EarlGrey 0x000000011b3d6f00 -[GREYTestCaseInvocation invoke] + 112 40 XCTest 0x000000014687b821 24-[XCTestCase invokeTest]_block_invoke.208 + 78 41 XCTest 0x00000001468d59b9 -[XCTestCase(Failures) performFailableBlock:testCaseRun:shouldInterruptTest:] + 57 42 XCTest 0x00000001468d58d7 -[XCTestCase(Failures) _performTurningExceptionsIntoFailuresInterruptAfterHandling:block:] + 96 43 XCTest 0x000000014687b30a __24-[XCTestCase invokeTest]_block_invoke + 1153 44 XCTest 0x000000014687ade2 -[XCTestCase testContextPerformInScope:] + 211 45 XCTest 0x000000014687ae7c -[XCTestCase invokeTest] + 137 46 EarlGrey 0x000000011b3c9dc4 -[XCTestCase(GREYAdditions) grey_invokeTest] + 1572 47 XCTest 0x000000014687cbed 26-[XCTestCase performTest:]_block_invoke_2 + 43 48 XCTest 0x00000001468d59b9 -[XCTestCase(Failures) performFailableBlock:testCaseRun:shouldInterruptTest:] + 57 49 XCTest 0x00000001468d58d7 -[XCTestCase(Failures) _performTurningExceptionsIntoFailuresInterruptAfterHandling:block:] + 96 50 XCTest 0x000000014687cb04 26-[XCTestCase performTest:]_block_invoke.334 + 88 51 XCTest 0x00000001468e9302 +[XCTContext runInContextForTestCase:block:] + 219 52 XCTest 0x000000014687c273 -[XCTestCase performTest:] + 668 53 XCTest 0x00000001468c1807 -[XCTest runTest] + 57 54 XCTest 0x000000014687684a 27-[XCTestSuite performTest:]_block_invoke + 365 55 XCTest 0x0000000146875f74 -[XCTestSuite _performProtectedSectionForTest:testSection:] + 54 56 XCTest 0x0000000146876271 -[XCTestSuite performTest:] + 355 57 XCTest 0x00000001468c1807 -[XCTest runTest] + 57 58 XCTest 0x000000014687684a 27-[XCTestSuite performTest:]_block_invoke + 365 59 XCTest 0x0000000146875f74 -[XCTestSuite _performProtectedSectionForTest:testSection:] + 54 60 XCTest 0x0000000146876271 -[XCTestSuite performTest:] + 355 61 XCTest 0x00000001468c1807 -[XCTest runTest] + 57 62 XCTest 0x000000014687684a __27-[XCTestSuite performTest:]_block_invoke + 365 63 XCTest 0x0000000146875f74 -[XCTestSuite _performProtectedSectionForTest:testSection:] + 54 64 XCTest 0x0000000146876271 -[XCTestSuite performTest:] + 355 65 XCTest 0x00000001468c1807 -[XCTest runTest] + 57 66 XCTest 0x00000001468f828e 44-[XCTTestRunSession runTestsAndReturnError:]_block_invoke + 171 67 XCTest 0x00000001468f8391 44-[XCTTestRunSession runTestsAndReturnError:]_block_invoke.84 + 118 68 XCTest 0x0000000146890593 -[XCTestObservationCenter _observeTestExecutionForBlock:] + 588 69 XCTest 0x00000001468f804d -[XCTTestRunSession runTestsAndReturnError:] + 623 70 XCTest 0x0000000146859dd7 -[XCTestDriver runTestsAndReturnError:] + 456 71 XCTest 0x00000001468e5554 _XCTestMain + 2484 72 libXCTestBundleInject.dylib 0x000000011b4ecbe7 copy_helper_block_e8_32s + 0 73 CoreFoundation 0x000000011c5f429c CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK + 12 74 CoreFoundation 0x000000011c5f3a08 CFRunLoopDoBlocks + 312 75 CoreFoundation 0x000000011c5ee894 CFRunLoopRun + 1284 76 CoreFoundation 0x000000011c5ee066 CFRunLoopRunSpecific + 438 77 GraphicsServices 0x000000012d8c5bb0 GSEventRunModal + 65 78 UIKitCore 0x000000012986bd4d UIApplicationMain + 1621 79 QQNews 0x000000010f366e5e main + 494 80 libdyld.dylib 0x0000000127860c25 start + 1 81 ??? 0x0000000000000005 0x0 + 5 ) Test Case '-[QNSchemeJumpTest testSchemeJumpWithLogin]' failed (15.207 seconds). Test Suite 'QNSchemeJumpTest' failed at 2020-04-28 12:57:00.706. Executed 1 test, with 1 failure (1 unexpected) in 15.207 (26.409) seconds Test Suite 'QNEGTest.xctest' failed at 2020-04-28 12:57:00.707. Executed 1 test, with 1 failure (1 unexpected) in 15.207 (26.410) seconds Test Suite 'Selected tests' failed at 2020-04-28 12:57:00.707. Executed 1 test, with 1 failure (1 unexpected) in 15.207 (26.411) seconds

tirodkar commented 4 years ago

That seems like an actual bug in the application. https://stackoverflow.com/questions/46355872/warning-from-ios-do-not-add-subviews-directly-to-the-visual-effect-view-itself

chan-park commented 4 years ago

Are you using EarlGrey 1 by any chance? This should be fixed in EarlGrey 2.

OuterCloud commented 4 years ago

God. help! Really Really Need Help! Hope EarlGrey 1.17 is comming soon!!!!!!!!!!!!! EarlGrey 2.0 is not what we want. Below is the problem I met and can not resolve. EarlGrey 1.16 running on >iOS 13.2 system(such as iOS 13.2.2, iOS 13.3 and so on) will find this error when running the test case based on XCTestCase (see the Exception Details below, please): Exception Details: Timed out waiting for app to idle. Please check the fatal error below:


Exception: TimeoutException

Exception Name: TimeoutException Exception Reason: Couldn't assert that ([GREYCondition conditionWithName:@"等待条件满足" block:^BOOL{ return [[QNReadSomeManager sharedInstance] someHistoryList].count == 0; }]) is true. Exception Details: Timed out waiting for app to idle.