OpenLiberty / liberty-tools-intellij

IntelliJ IDEA extension for Liberty
https://plugins.jetbrains.com/plugin/14856-open-liberty-tools
Eclipse Public License 2.0
11 stars 20 forks source link

Upgrade to IntelliJ IDEA 2024.1: Investigate and resolve issues with UI test automation. #740

Closed mrglavas closed 2 months ago

mrglavas commented 2 months ago

See comments here: https://github.com/OpenLiberty/liberty-tools-intellij/issues/722#issuecomment-2093670568.

The runIde crashes: https://github.com/OpenLiberty/liberty-tools-intellij/issues/723 may be contributing to failures. Other updates may be required to the tests due to changes in the UI in IntelliJ 2024.1.

turkeylurkey commented 2 months ago

Noticed another error while debugging this. The UI test can corrupt the file as demonstrated. image Will fix the test cases not to do this.

turkeylurkey commented 2 months ago

UI test exception

com.intellij.remoterobot.utils.WaitForConditionTimeoutException: Exceeded timeout (PT1M) for condition function (Failed to find 'JTreeFixture' by '//div[@class='ProjectViewTree' and contains(@visible_text, 'sampleGradleMPLSApp')]' in 60s) 
        at com.intellij.remoterobot.utils.RepeatUtilsKt.waitFor(RepeatUtils.kt:51)
        at com.intellij.remoterobot.utils.RepeatUtilsKt.waitFor$default(RepeatUtils.kt:37)
        at com.intellij.remoterobot.SearchContext$find$1.invoke(SearchContext.kt:53)
        at com.intellij.remoterobot.SearchContext$find$1.invoke(SearchContext.kt:51)
        at com.intellij.remoterobot.stepsProcessing.StepWorkerKt.step(StepWorker.kt:23)
        at com.intellij.remoterobot.SearchContext$DefaultImpls.find(SearchContext.kt:51)
        at com.intellij.remoterobot.fixtures.ContainerFixture.find(ContainerFixture.kt:12)
        at io.openliberty.tools.intellij.it.fixtures.ProjectFrameFixture.getProjectViewJTree(ProjectFrameFixture.java:172)
        at io.openliberty.tools.intellij.it.SingleModJakartaLSTestCommon.prepareEnv(SingleModJakartaLSTestCommon.java:188)
        at io.openliberty.tools.intellij.it.GradleSingleModJakartaLSTest.setup(GradleSingleModJakartaLSTest.java:43)
turkeylurkey commented 2 months ago
com.intellij.remoterobot.utils.WaitForConditionTimeoutException: Exceeded timeout (PT10M) for condition function (Failed to find 'ComponentFixture' by '//div[@class='Tree' and @name='LibertyTree' and contains(@visible_text, 'sampleGradleMPLSApp')]' in 600s) 
        at com.intellij.remoterobot.utils.RepeatUtilsKt.waitFor(RepeatUtils.kt:51)
        at com.intellij.remoterobot.utils.RepeatUtilsKt.waitFor$default(RepeatUtils.kt:37)
        at com.intellij.remoterobot.SearchContext$find$1.invoke(SearchContext.kt:53)
        at com.intellij.remoterobot.SearchContext$find$1.invoke(SearchContext.kt:51)
        at com.intellij.remoterobot.stepsProcessing.StepWorkerKt.step(StepWorker.kt:23)
        at com.intellij.remoterobot.SearchContext$DefaultImpls.find(SearchContext.kt:51)
        at com.intellij.remoterobot.fixtures.ContainerFixture.find(ContainerFixture.kt:12)
        at io.openliberty.tools.intellij.it.fixtures.ProjectFrameFixture.getTree(ProjectFrameFixture.java:215)
        at io.openliberty.tools.intellij.it.UIBotTestUtils.validateImportedProjectShowsInLTW(UIBotTestUtils.java:378)
        at io.openliberty.tools.intellij.it.SingleModMPLSTestCommon.prepareEnv(SingleModMPLSTestCommon.java:318)
        at io.openliberty.tools.intellij.it.GradleSingleModMPLSTest.setup(GradleSingleModMPLSTest.java:45)
turkeylurkey commented 2 months ago
com.intellij.remoterobot.utils.WaitForConditionTimeoutException: Exceeded timeout (PT2M) for condition function (Failed to find 'Welcome Frame' by 'FlatWelcomeFrame type' in 120s) 
        at com.intellij.remoterobot.utils.RepeatUtilsKt.waitFor(RepeatUtils.kt:51)
        at com.intellij.remoterobot.utils.RepeatUtilsKt.waitFor$default(RepeatUtils.kt:37)
        at com.intellij.remoterobot.SearchContext$find$1.invoke(SearchContext.kt:53)
        at com.intellij.remoterobot.SearchContext$find$1.invoke(SearchContext.kt:51)
        at com.intellij.remoterobot.stepsProcessing.StepWorkerKt.step(StepWorker.kt:23)
        at com.intellij.remoterobot.SearchContext$DefaultImpls.find(SearchContext.kt:51)
        at com.intellij.remoterobot.RemoteRobot.find(RemoteRobot.kt:32)
        at com.intellij.remoterobot.SearchContext$DefaultImpls.find(SearchContext.kt:34)
        at com.intellij.remoterobot.RemoteRobot.find(RemoteRobot.kt:32)
        at io.openliberty.tools.intellij.it.SingleModMPProjectTestCommon.prepareEnv(SingleModMPProjectTestCommon.java:906)
        at io.openliberty.tools.intellij.it.GradleSingleModMPProjectTest.setup(GradleSingleModMPProjectTest.java:78)
turkeylurkey commented 2 months ago

Ran these test cases locally:

No errors reported.

Sometimes the quick fix does not appear in the diagnostic.

image