In: Computer Science
Respond to the statement below in at least 100 words. Original answers only.
If developers are making decisions on the requirements, then how do they know that the software will work properly for the end user? Developers are not telepathic and though they usually have experience in what they are doing, it does not mean that they are going to get the project exactly right without any consumer or user input.
Here are some of the best testing practices I learned by experience:
1) Learn to analyze your test results thoroughly. Do not ignore the test result. The final test result may be ‘pass’ or ‘fail’ but troubleshooting the root cause of ‘fail’ will lead you to the solution of the problem. Testers will be respected if they not only log the bugsbut also provide solutions.
2) Learn to maximize the test coverage every time you test any application. Though 100 percent test coverage might not be possible still you can always try to reach near it.
3) To ensure maximum test coverage
break your application under test (AUT) into smaller
functional modules. Write test cases on such individual
unit modules. Also if possible break these modules into smaller
parts.
E.g: Lets assume you have divided your website
application in modules and ‘accepting user information’ is one of
the modules. You can break this ‘User information’ screen into
smaller parts for writing test cases: Parts like UI testing,
security testing, functional testing of the ‘User information’ form
etc. Apply all form field type and size tests, negative and
validation tests on input fields and write all such test cases for
maximum coverage.
4) While writing test cases, write test cases for intended functionality first i.e. for valid conditions according to requirements. Then write test cases for invalid conditions. This will cover expected as well unexpected behavior of application under test.
5) Think positive. Start testing the application by intend of finding bugs/errors. Don’t think beforehand that there will not be any bugs in the application. If you test the application by intention of finding bugs you will definitely succeed to find those subtle bugs also.
6) Write your test cases in requirement analysis and design phase itself. This way you can ensure all the requirements are testable.
7) Make your test cases available to developers prior to coding. Don’t keep your test cases with you waiting to get final application release for testing, thinking that you can log more bugs. Let developers analyze your test cases thoroughly to develop quality application. This will also save the re-work time.