0

I am trying to figure out the best practice for manual testing where there are multiple valid routes to reach a step in the test.

For example, a test for changing a password could be:-

Test 1

  1. User invited to the system via email
  2. User creates login
  3. User changes password

Test 2

  1. User navigates to website and creates login
  2. User changes password

If the purpose of the test is to confirm the password update functionality is working correctly, I imagined the test could look like this:-

  1. User creates login from invite

OR

  1. User create login from website

  2. User updates password

When I try and reproduce this scenario using testing tools it doesn't seem like its possible so I think this may not be best practice and wanted to get your advice?

TL;DR For manual testing best practice, can test steps have an OR condition?

Thanks

2
  • I would be keen to understand the downvotes so I can improve next time!
    – martpendle
    Commented Apr 25, 2022 at 15:33
  • 1
    I am keen to understand the down-votes as well, especially with no close votes... Commented Apr 26, 2022 at 2:17

1 Answer 1

3

No, you have two test cases: the behaviour may differ between the two, so you may want to declare one route as passing and the other failing.

The "problem" here occurs when you have multiple "or" branches through your application as the number of test cases grows exponentially. This is where you need to talk with your development team and work out which paths it's important to test, and which ones can be ignored/assumed to be covered by other paths. For example, while you think it is important to test the two signup paths when changing password, it seems unlikely that (say) the signup route would affect the core functionality of your app, so you don't need to duplicate every single test case for the signup route.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.