Uploaded image for project: 'Magnolia Test Framework'
  1. Magnolia Test Framework
  2. MGNLTEST-372

Provide generic (?) check to ensure angular-app is ready / fully loaded

    XMLWordPrintable

Details

    • Task
    • Resolution: Resolved
    • Neutral
    • None
    • None
    • None

    Description

      Provide a "utility" to check whether an angular app is completely loaded / ready.

      We have something similar for Vaadin (see VaadinWebDriverWrapper, VaadinWebElementWrapper) ...
      however, I'm not looking for another element wrapper, rather thinking about a Selenide custom condition or a SeleniumCondition

      Use case

      subscription-service-ui/e2e ... user-profile.feature
      Step When I open user profile page
      I call UserProfilePage#assertExists

      // in info.magnolia.cloud.e2e.pageobjects.UserSettingsPage
          public void assertExists() throws Throwable {
              // TODO: do better implementation here ...
              firstNameField.shouldBe(visible).shouldNotBe(disabled);
              changePasswordTab.shouldBe(visible).should(enabled);
          }
      

      the assertExists shown above is passing, while the UI is still "greyed-out", see screenshot - hence the subsequent step
      When I go to Change password tab - clicking of the "tab" fails. I can "work around" by adding a Selenide.sleep(5000); ... after calling assertExists, but ... that is a bit hack-ish - would be nice to have better solution without #sleep.
        

      Developer notes

      Some sources:

      Checklists

        Acceptance criteria

        Attachments

          Activity

            People

              hpola Harshini Pola
              cmeier Christoph Meier
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                Work Started:

                Checklists

                  Task DoR

                  Time Tracking

                    Estimated:
                    Original Estimate - Not Specified
                    Not Specified
                    Remaining:
                    Remaining Estimate - Not Specified
                    Not Specified
                    Logged:
                    Time Spent - 1d 1h
                    1d 1h