Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Define and implement key user flows for E2E tests #249

Open
1 of 7 tasks
mwalker-scottlogic opened this issue Jul 25, 2024 · 2 comments
Open
1 of 7 tasks

Define and implement key user flows for E2E tests #249

mwalker-scottlogic opened this issue Jul 25, 2024 · 2 comments

Comments

@mwalker-scottlogic
Copy link
Collaborator

mwalker-scottlogic commented Jul 25, 2024

As we are doing a lot of integration testing, the objective is to have less e2e tests as a result. For the e2e tests we do have I think they should be covering key user flows in the application. While our app is small, there are flows we could define and then automate, checking multiple layers of the application rather than mocking.

Doesn't cover the ETL scripts, only the UI, API and database
Automated using Playwright
user end to end flows are documented in the wiki (use Gherkin style)

Test Checklist:

  • Test Analysis & discussion with developer
  • Write Test Cases / Charters
  • Test Cases & Charters Reviewed
  • Test Cases Executed
  • Test Charters Executed
  • Regression tests executed
  • Automation Tests added to project
@rstrange-scottlogic rstrange-scottlogic changed the title Define key user flows for E2E tests Define and implement key user flows for E2E tests Aug 2, 2024
@mnyamunda-scottlogic mnyamunda-scottlogic self-assigned this Aug 13, 2024
@mwalker-scottlogic
Copy link
Collaborator Author

mwalker-scottlogic commented Aug 21, 2024

Test Analysis

  • Use Cucumber BDD to enable the test to be written in business facing language
  • As there has been a lot of test effort targeted lower down the pyramid at integration points, the E2E tests can be very simple, just check that the system is available and that it works all joined together
  • Need to manually verify that the prod data in the summary table is correct for a given city
  • Need to manually check a specific graph is correct for the prod data
  • In the E2E tests we can then rely on using hard coded prod data / snapshots to verify that the app is working correctly
    • given the discrepancy in the summary table data, I will proceed with this approach unless the investigation into the possible bug reveals it to be an issue
  • Scenarios:
    • Default behaviour: navigate to homepage, filter to a city, check summary table values, click on city, check graph snapshot removing as we will need to use hardcoded data
    • Change forecast base time: navigate to homepage, change base time, filter to a city, check summary table values, click on city, check graph snapshot
    • Change forecast base time: navigate to homepage, change base time & forecast window, filter to a city, check summary table values, click on city, check graph snapshot

@mwalker-scottlogic
Copy link
Collaborator Author

Status update:

  • PR raised to merge one e2e test
    • Change forecast base time: navigate to homepage, change base time & forecast window, filter to a city, check summary table values match with manually verified values from the database
  • Not enough time available to flesh this ticket out further, implementation could be potentially refactored

@mwalker-scottlogic mwalker-scottlogic removed their assignment Sep 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants