kif-framework / KIF

Keep It Functional - An iOS Functional Testing Framework
Other
6.2k stars 909 forks source link

Fix occasional CI failures on the iPhone simulator #1287

Closed Fitzmaz closed 11 months ago

Fitzmaz commented 12 months ago

In iOS, the edit menu is designed to display two commands and a "Forward" or "Back" page button when there are more than two commands available.

If the pasteboard already contains a string, the edit menu will show "Paste" and "Select" commands. The "Select All" command can be accessed on the next page.

Executing a case that taps the "Cut" command will result in the failure of all subsequent cases that require tapping the "Select All" command.

One solution to this is to clear the pasteboard before the "Select All" cases.

Fitzmaz commented 12 months ago

Another failure in AccessibilityIdentifierTests.testClearingAndEnteringTextIntoViewWithAccessibilityLabel:

AccessibilityIdentifierTests
  testClearingAndEnteringTextIntoViewWithAccessibilityLabel, The step timed out after 10.00 seconds: Could not find element with BLOCKPREDICATE(0x6000030500f0)
  /Users/runner/work/KIF/KIF/KIF Tests/AccessibilityIdentifierTests.m:73
{
    [tester clearTextFromAndThenEnterText:@"Yo" intoViewWithAccessibilityIdentifier:@"idGreeting"];
}

  testClearingAndEnteringTextIntoViewWithAccessibilityLabel, The step timed out after 10.00 seconds: Found an accessibility element with the label "Test Suite", but not with the traits "1"
  /Users/runner/work/KIF/KIF/KIF Tests/AccessibilityIdentifierTests.m:137
{
    [tester tapViewWithAccessibilityLabel:@"Test Suite" traits:UIAccessibilityTraitButton];
}

Based on the error messages, it appears that the runner failed to enter the TapViewController and got stuck at the TestSuiteViewController. Not sure about the cause of this though.

justinseanmartin commented 12 months ago

I think I've got a fix for the AccessibilityIdentifierTests flakiness in PR #1288. I only reproduced it locally on my machine once, but I'm going to run it against CI and see if it is more reliably green.

justinseanmartin commented 12 months ago

If we keep having trouble getting this to go green, you might rebase latest master now that #1288 is merged.