This test executes an end to end workflow with two separate users. In it, User A creates a new meeting type and activates it. The test asserts that the meeting type was created correctly and published. User B then goes to the calendar link associated with the meeting type and schedules a meeting with User A. Both users A and B receive email notification of the scheduling event and the test asserts that the notifications were sent. User A then cancels the meeting the User B created. User B receives a notification and the test asserts that the cancellation event was successfully received by User B.
Using Playwright instead of Cypress or Selenium lets our test runner open multiple user sessions. Each session runs in an incognito browser so there aren’t any shared cookies, and the framework lets the runner switch between them throughout the test so that we can assert results as the two users interact.
Our test runner connects to an internal email handler. We poll for the email, but frequently have to include delays in our test code because emails are finicky and might get delayed during a test run.
Once the email arrives, the runner parses the HTML and extracts the URL needed for the test. Later, when canceling the email, the runner asserts that the subject line is the one we expect to receive.
QA Wolf trains testers to build tests for quick development and stability. By placing “teardown” steps at the beginning of tests in try/catch blocks, our testers can know that if a test fails while they are developing it, their test will automatically clean up any extraneous artifacts that might otherwise be left behind and need manual removal.
Furthermore, our tester designs for repeatability by using a unique meeting type per test to prevent type collisions in future tests.