Skip to content

E2E Integration Tests

Sachin Chaurasiya edited this page Oct 6, 2022 · 17 revisions

OpenMetadata End-to-End Integration Tests

Sign-Up Page for Basic Auth

  1. Users should be able to create and sign in with their email or username
  2. Admin should be able to log in and create a new user with a one-time password. A newly created user should be able to log in with that one-time password
  3. Disabling the sign-up option in the server should disable any signup option from the UI and the API.
  4. Sign-in with an incorrect user or password should throw "Incorrect username or password".

Sign-Up Page After SSO login

  1. User account creation page
  2. user should be able to select a team
  3. Test if only joinable teams are listed
  4. Test if the soft-deleted teams are not listed.
  5. If the team hierarchy is A -> B -> C. and the B team is soft-deleted, we should move the C team to be under A and allow users to join A -> C.
  6. Create a new team and make it joinable and test if that appears in the sign-up process
  7. Create a new team and make it a non-joinable test if that doesn't appear in the sign-up process

Landing Page tests

  1. Landing page should load with Zero errors as a non-admin user
  2. It should have all the assets and their counts correctly on the left side top panel
  3. Recent views should be either be empty if this the new user who logs in, and it should be relevant recent views if the existing user logs in 3.1 Login as a new user, test if the recent views are empty 3.2 Go to Explore page and look at a new asset (table, pipeline, dashboard, topic, mlmodel) 3.3 All of these should be available in "Recent Views" and should be clickable and go to the respective entity page 3.4 Log out and Log-in, and we should still see the last "Recent Views."

My Data

  1. Assign ownership of an entity to a logged-in user; it should appear on the landing page

  2. Assign ownership to an entity to a team that the logged-in user belongs to; it should appear on the landing page

  3. Assign ownership to the logged-in user for about 20 assets. We should only show 5 in and show "View All" the correct count Example:

image Here, we are showing three assets but View All shows count as 6
  1. Remove ownership, and it should accurately represent the count in My Data

  2. Clicking on any of these entities should take you to the entity page

  3. Clicking on the View More should take you to the User Profile -> My Data page

  4. Test if the assets indeed belong to the user and/or their teams

  5. Test if the pagination works on the My Data page in User Profile

Following

  1. Follow an entity and make sure that entity appears on the Landing page under the Following section (right-side)
image
  1. Follow 20 entities, and we should only show 5 in the Follow Section and show "view all" with the correct count
image
  1. Unfollow an entity, and it should accurately represent the count on the landing page "View All"

  2. Clicking on any of these entities should take you to the entity page

  3. Clicking on the View More should take you to the User Profile -> "Following" page

  4. Test if the assets are indeed followed by the user and/or their teams

  5. Test if the pagination works on the Follow page in the User Profile

Test for Bots

  • The user Should not be able to delete the ingestion bot
  • The user Should be able to create a bot with OpenMetadata JWT AuthMechanism with token expiry.
  • Created bot should match the expiry time and AuthMechanism
  • Created bot should match the display name and description on the bot listing as well as on the bot details page
  • The user should be able to revoke the token if already present
  • The user should be able to Edit the Token expiry and verify the same
  • The user should be able to set all these expiration
  • 1 Hour
  • 1 Day
  • 7 Days
  • 30 Days
  • 60 Days
  • 90 Days
  • Unlimited Days
  • The user should be able to delete the created bot
Clone this wiki locally