When developing software, one of the most important objectives is to minimize the number of bugs for the end-product. Although most bugs are usually removed during the alpha and beta phases of software, it is important that you test it through the entire building phase.
Table of Contents
- 1 Test Case Templates
- 2 What is a test case?
- 3 Test Case Examples
- 4 What does a test case template consist of?
- 5 Test Case Documents
- 6 Information to include while drafting a test case
- 7 Things to do in order to write a good test case example
- 8 Test Case Samples
- 9 Should you use software for managing your test cases?
- 10 Conclusion
The most effective way to do this is to get a tester who will run the entire program and reported anything unusual back, but there is a lot more to it than that. You will need to create a test case template first, by creating one you can give the tester several sequences of steps that will help him confirm if the program is free of bugs.
Test Case Templates
What is a test case?
In order to get the best out of a product at the end of its production phase, you will need to make sure that it is bug-free. You can do that by hiring a tester and giving him a test case, but what is a test case exactly?
The easiest way to understand it is with the help of its dictionary meaning. “A test case is a set of conditions or variables under which a tester will determine whether a system under test satisfies the requirements or works correctly.”When it is worded like that, it’s simple, isn’t it?
There is no need to worry, creating a test case or a template for it is nothing overcomplicated. For now, all you need to know is that essentially, this is a process where the tester gets in contact with a system and with the help of preset conditions, he tests the system and confirms the end result.
You may have noticed that this sounds a lot like a scientific method and we have to say that it is pretty similar in comparison. A test case, may in the end, be a scientific method not only for detecting bugs but for creating a hypothesis on how to remove them. Here are some examples of steps that a person could test:
- Confirm login functionality when entering valid username and password
- Test results when entering a valid username but invalid password
- Check results when the username field is filled by password field is empty
As you can see, if you’re writing a code for a website and you need to test some basic functions of it like the login page, the first things a tester would do is check out if the signing in functions works. You may have noticed that these test case examples are very specific, you will see in the following sections that a test case needs to be exactly like that. Some tests may end up being vague, but in most cases, a tester will need to check a specific thing.
Test Case Examples
What does a test case template consist of?
This will depend most of the times on the software that is being tested and on the number of requirements that the tester should fill out, but in the end, all test case templates are generally similar. If you’re making a template, make sure that it includes the following:
- Test Case ID
- Test Scenario
- Test Steps
- Test Data
- Results Expected
- Results Received
Before actually getting into the details of each step and part of the template, you need to know what a good test case should be about. When a tester gets in contact with the system you created, he should only resort to testing out specific parts of the system. In order to avoid any confusion or wasted hours because you didn’t tell the tester exactly what he/she should do, try to avoid any vague objectives.
For a better perspective, avoid giving your tester vague objectives like “Test login functionality of the page”, “Confirm that the program fulfills its target mission” and so on. Instead of that, try telling him exactly what he should do as well as variants of it. Variants are important because they can help with getting rid of hidden bugs. An example would be to test a login page with both valid and invalid data. Now let’s talk about the parts of a test case template.
Test Case ID
A test case ID is important because you will be able to document your results with ease. Not only will you document it, you will also be able to avoid testing the same things over and over again. An ID can be marked however you want, if you’re doing multiple systems you can start with the name with a short acronym of the programs name or even with the full name.
If you’re doing multiple tests, you can also put the objective of the test in the name of the template. Naming it like XXLoginPage01, where the XX stands for the acronym or full name of the software is a good example.
The test scenario field will include all possible information about the testing. It won’t contain any sequences or steps of the testing phase, but it will contain a specific objective that the tester should keep in mind. This field could contain information like “Check admin login page with valid data”.
In order to make it easier for the tester, always try to keep this field as specific as possible. Don’t try to add anything vague or anything unnecessary to the testing that might confuse the tester. Try to avoid idioms as well so that the tester can do his job properly.
As we have already told you in the previous field, a test scenario should only include the information about the testing and exclude any steps. But the next field that you should have is the Test Steps field. With this area, you can tell the tester exactly what to do in steps and even add some prerequisites about the system.
Always try to include a large number of steps that have specific objectives. Don’t write steps that have too many words and don’t add commentary in this field. Here is what a test steps field should look like:
- Start up the software
- Head over to the registration area
- Insert data in all fields
- Submit the data by clicking register
See? It is plain and simple and contains all the info needed in concise short steps. Depending on how complicated the objective is, you may need to give the tester a few more steps, but always keep them short and specific.
The test data field is entirely optional because it depends on the system the tester will use. If his objective demands any additional information that he needs to input in order to complete his objective, then you must have a field in which you will place that information.
If you’re following our login page examples, if for an objective where the tester needs to test its functionalities by placing the data and trying to log in, he will need that login information. If he is only limited to placing the username and password data, he will need that information in order to fulfill his objective.
This is the most important part because this field will explain the tester on what results he should expect, given that the system is bug-free. If the tester is trying to log into an account on the given software, the expected results could for an example say that he should end up logging into his account.
This could take a twist, perhaps the tester is given invalid data for the login fields, then naturally he should have expected that the website or software does not let him log into his account. Make sure that the expected results field should be precise as well and that it includes everything that the software is intended to do in that step.
Once the tester fulfills all the test steps and inserts all the test data, he should now get the results of his testing. The results can be both positive and negative, they can either confirm that the program is working as intended or that it gives an entirely different result.
Although it is more preferred to have positive results, negative results will help you a lot by detecting that there is, in fact, a bug hidden in the code. For an example, if clicking a picture of a red button should convert its color into blue, then the results are as expected if that’s what the system is supposed to do. But if the color of the button stays the same or if it changes into yellow, then there is a problem that should be fixed.
A confirmation field is a lot similar to the Results Received field. While the Results Received field will just consist of the tester saying if he got the expected results, a confirmation field will just point out if the testing was a success or a fail.
With this, we don’t talk about the actual testing process failing or succeeding, we are talking about whether the system has or has not fulfilled its intended objective. This field could only consist out of the words pass or fail, but if you wish you can also tell the tester to write any comments about the process. You can also make the commentary into another field, but it is all up to you.
Test Case Documents
Information to include while drafting a test case
In the previous section, we have explained exactly out of what a test case template should consist of. We also mentioned which fields it has and what information those fields would include. Now we will mention some tips about drafting a test case, as well as some other information that you should include.
- Test case should be specific and shouldn’t include more than 15 steps
- Include any sort of proof or attachments
- Add a description of what requirement is tested
- Explain in detail how the system will be tested
- Provide actions and expected results, as well as inputs and outputs
- Make sure to use active case language
Another important thing is that the test setup of the tester should be compatible with the site or program, this is extremely important when it comes to testing out games or software that is demanding. For an example, perhaps the tester should test some parts of a demanding game, in this case, the setup of the tester should consist of a powerful PC that can handle it. If the PC isn’t powerful enough for the game, then it may interfere with the results of the testing. Make sure to include the following info for the test setup:
- Version of the system that the tester is using
- Operating system required for the software
- Hardware requirements for the software
- Include the software itself and any data files that are needed
- Add prerequisites such as other tests
Things to do in order to write a good test case example
So far, we have talked about what a test case actually is, what a test case consists out of, and which information you should additionally provide to your tester. Now you will have a certain picture in mind before you start and write your own test case, but before you do that we recommend you to follow these tips:
Make it simple and transparent
When making a test case example, make sure that it is as simple as it can be. Never try to give the tester over complicated objectives that may need more than 15 steps and make sure that it is clear and easy to understand. Failing to do so will make you end up with a tester who can’t execute the steps.
Don’t use unnecessary words and don’t keep it casual, make sure to use assertive language that is concise; we have already placed examples of steps like these in the previous sections. If you make it simple, a tester will be able to execute the software faster.
Keep in mind the end user as well
A test case template should not only be easy to understand, it should also have objectives that ensure customer needs. When setting out the objective, make sure that it is something important, something that the end user will get in contact with and will certainly use.
A login page is a good example, if you’re creating a website or an internet forum that resolves around communities, you need to make sure that the future users can successfully register and login. For a good test case template, you should always think about the end user.
Avoid repeating the same tests
Once you have confirmed that the software created is bug-free in a specific area, you should not give your testers any more case tests for that area. Most of the time you will avoid repeating the same test cases by using a proper test ID.
Create an ID for the test you created and even place it as the filename. Keep in well documented and make sure that the objective of it is implicated in the name of the ID. This way you can save time by making test case templates for other objectives.
Confirm all software requirements
As difficult as it is to create software, another difficult thing is to make sure that the created software is compatible with most systems. If you already created the software and know that it can’t, for an example, work on operating systems older than Windows 7, you should include that in the test case template.
Place every single software requirement in the test case example you’re making so that the tester can execute his objective faster and so that the testing doesn’t get interfered by the wrong testing system. By doing this you will get precise results.
Make the ID easy to identify
If you’re making a test case example for an objective that needs several steps and prerequisites, make sure that all of your documents have IDs that are identified with ease. If you’re telling the tester to change the settings of his account on the system, he must be able to log into his account in the first place.
By placing an ID that can be identified easily, you can then search and correct the prerequisite by checking if the user can even log into his account. You can name it in any way you want, just make sure that you can know what it is about later.
Use testing techniques
Testing a system or a program is hard, not only that the testing needs to be taken care of, you also need to think of all the possible bugs that can occur, as well as the conditions that need to be made. With the help of a testing technique, you can get a few test cases that have the highest possibility of finding a bug in your software.
- Equivalence Partition. This will partition the range into groups that have similar behavior
- Error Guessing Technique. This method will guess the most probable error that may occur during testing, it relies on the experience of the tester
- Boundary Value Analysis. This technique will help you define boundary testing for a specified range of values
Make it repeatable
Once your tester has made sure that the objective is completed and that the software works as intended, you should make sure that the same test can be repeated several times and that you get the same results. By making sure that you always get the same results, you will ensure that your software works.
In order to do this, you can get multiple testers to work on the same objective, you can even tell them to test it with both correct and incorrect data. By doing this, your program will always work no matter who uses it.
Get your test case designs reviewed
This is especially important if you’re just a beginner when it comes to writing a test case template, but know that this is important no matter how much experience you have. Getting your templates reviewed by your colleagues will help you get a template that is easily understood and works as intended.
Your colleagues can also help you discover any defects in your design or anything that you may have left out. So before sending your test case example to your tester, make sure to get it reviewed by colleagues and friends.
Test Case Samples
Should you use software for managing your test cases?
Test case management tools are important for the inexperienced as they help you both with maintaining and managing your test case examples. Some of the notable parts of these tools are the following:
- They help you with documenting current test cases
- You can execute current test cases and record the results instantly
- Defect tracking is automated as the failed tests are instantly recorded in the bug tracker, the software may even notify the developer of this
- Protects your test cases from being lost or corrupted
Although it isn’t entirely necessary for you to buy or use a free software for keeping your test cases safe and automatically managed, it can really help those who are inexperienced or those who create a lot of cases. If you don’t want to waste money on buying these test case managers, you can always try to do everything alone and see if you’re up to the task.
Creating a properly designed test case template can be beneficial for both you, the developer and the customers who will end up using the product you created. By bringing the testing phase to the end, you’re also ending the coding phase of your product which marks the beginning of selling the software or licensing it.
We hope that we helped you with this guide, now you can finally create a test case example that is simple for both you and your tester to use. Keep in mind the management software that we mentioned, if you have troubles in the future you should consider using these tools.