I need some guidance around user acceptance testing cases for web development, meaning I have developed GUI for a user to log in and register. I need now to write test cases for this graphic user interface for a client. Anyone who can help me to do this? I am a cloud stack developer and full-stack, so my experience to quality assurance is quite limited but I am open to knowledge and learn as well.
For starters, don't pass to your client the impression that you can document all your testing, because testing is a performance, not artifact generation. It is made of both explicit and tacit knowledge, including tacit oracles, which can't be described down.
Now, changing the question to "how to communicate the information I've uncovered during testing?":
- Easiest and more complete way: Record your testing and express your thinking process along the way. This is known as Testopsy;
- You can fill out a charter of your testing sessions (possible template here), followed by debriefing session;
- You can pair with your client during your testing;
- You can describe specific actions and outcomes in sequential order, attempting to encode all the thought process you had during your testing.
Speaking of the last point, unless your context really calls for this type of solution, I would suggest to not go this way. If the idea of encoding a human thought process doesn't seem absurd and misleading to you, I would suggest reading this blog post series.
It's not entirely clear to me whether you are looking to test the login system and/or application functionality. At a high level I would look to have:
- happy cases - stuff works
- sad cases - stuff fails as expected
You also need to set up testing throughout the process so code can be changed in the future, so you should have automation for
- unit tests
- integration tests
- ui tests
Most of your tests should be at the unit level according to the test pyramid.
User acceptance tests are built from user point of view. They are not built according to SRS but they can be built using BRD where requirements are specified in user terms i.e. from user point of view. Acceptance tests tell whether newly built application is accepted by user or not. SO these tests should be as close to general high level scenarios which user can also understand as ultimately user has to run these. You can use gherkin language to write these tests and can use BDD style for it. Instead of BRD etc. testers can also team up with users to create these tests in users terms which is understandable to them.
User Acceptance Testing is one of the integral part of qa services. Coming to your question - Firstly you have to make sure that login and register basic functionality is working before giving the same for User Acceptance Testing.
Once you are sure you can write the test cases for log-in and register. I will share some one-liners with you:
1. Verify that user is able to login using valid username and password.
2. Verify that user is prompted to error message when trying to login through invalid username/ password.
3. Verify that user is able to register successfully.
4. Verify that user is not able to register with invalid data.
Similarly you can create multiple user acceptance test cases and can share with your client.