17 April 2009 ~ 0 Comments

Introduction to Software Testing

Testing, testing, and testing… this may be a monotonous task to perform as a tester.

In software, testing is clearly necessary to deliver a good product or solution to make your clients or bosses pleased and satisfied with the product. As a developer, I have no experience at all hence have no clue where to start and how to begin with. So again, I have to use my googling skill to look for some clue out there. Please read on and I hope I can help you understand abit.

First you need to understand the difference between Black box and White box testing. This isn’t about the colour but rather to the ideology of the testing. Here’s the definition of Black box testing taken from wiki.

Black box testing takes an external perspective of the test object to derive test cases. These tests can be functional or non-functional, though usually functional. The test designer selects valid and invalid inputs and determines the correct output. There is no knowledge of the test object’s internal structure.

This means that the purpose of the testing is merely to simplify your testing process by specifying input and expecting some output without any knowledge of the what the function is supposed to do. Think of black box as opaque box or closed box. To help you better understand, imagine you are testing an electronics system and it is housed in a black box with lights, switches, and dials on the outside. You must test it without opening it up, and you can’t see beyond its surface. You are only able to see if it works just by flipping switches (inputs) and seeing what happens to the lights and dials (outputs). On the other hand,

White box testing uses an internal perspective of the system to design test cases based on internal structure. It requires programming skills to identify all paths through the software. The tester chooses test case inputs to exercise paths through the code and determines the appropriate outputs.

People refers white box testing to clear box testing, glass box testing, transparent box testing, translucent box testing or structural testing. An opposite test approach would be to open up the electronics system, see how the circuits are wired, apply probes internally and maybe even disassemble parts of it. White box testing may also refer as unit testing, integration testing, or system testing.

First statement in your mind may be “Ok, I get it now” but the question still remains “How do I test?”, “Where should I start?”. Next what you need to do is to gather your customer’s requirements and use them to produce your test cases. A test case is a set of conditions or variables under which a tester will determine whether an application or software system meets documented specifications or requirements. After the list of test cases are produced, testing is then performed based on the list. To help you with test cases, you may refer to this site which provides a good sample of test cases.

There are two approaches in performing your testing: Manual and Automated testing.

Manual testing is is the process of manually testing software for defects. It requires a tester to play the role of an end user, and use most of all features of the application to ensure correct behavior. To ensure completeness of testing, the tester often follows a written test plan that leads them through a set of important test cases.

Whereas Automated testing is the technique of testing software using software rather than people. A test program is written that exercises the software and identifies its defects. These test programs may be written from scratch, or they may be written utilizing a generic Test automation framework. As it is considered to be a very expensive technique hence it requires careful planning and effective testing strategy as explained in “Best Practices in Software Test Automation“. I.M. Testy also highlights that the goal of automated testing has to be Specific, Measurable, Achievable, Realistic, and Timely (SMART).

If you find this post useful, please leave your rating below. Or if you still have doubt, leave your comment below. Thank you!

Sources:

If you find this post helpful, appreciate if you could leave your rating below to indicate that this post is really useful and at the same time let others know about this post. Thank you friend :)

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

Leave a Reply

Spam protection by WP Captcha-Free