How To Get Started With Software Testing?

Sam s
4 min readJan 1, 2020

--

How To Get Started With Software Testing

A true professional does not waste the time and money of other people by handing over software that is not reasonably free of obvious bugs; that has not undergone minimal unit testing; that does not meet the specifications and requirements; that is gold-plated with unnecessary features; or that looks like junk.- Daniel Read

To identify mistakes like gaps, errors, semicolons or missing requirements there is a need of testing. Here you will understand the need of testing, its types, methods, levels and other related terminologies. It is process to evaluate a system with actual requirements.

Software testing is an investigation conducted to provide stakeholders with information about the quality of the software product or service under test.[1] Software testing can also provide an objective, independent view of the software to allow the business to appreciate and understand the risks of software implementation. Test techniques include the process of executing a program or application with the intent of finding software bugs (errors or other defects), and verifying that the software product is fit for use.

Software testing involves the execution of a software component or system component to evaluate one or more properties of interest. In general, these properties indicate the extent to which the component or system under test:

meets the requirements that guided its design and development,

responds correctly to all kinds of inputs,

performs its functions within an acceptable time,

it is sufficiently usable,

can be installed and run in its intended environments, and

achieves the general result its stakeholders desire. Source (wikipedia.org)

Software Testing

In large organizations, they have a team to evaluate the developed software. They also conduct testing which is called Unit testing. Following are the professionals involved in testing a system.

· Software Tester

· Software Developer

· Project Manager/Lead

· End User

There are also different designations for Software testers according to the kind of companies such as Software tester, QA Analyst, Software Quality Assurance Engineer etc.

Applications of Software Testing

Software testing is an essential part of Software development. An early software testing saves time and money both. There may be many bugs or defects in developed Software, which may be very dangerous and can lead to huge financial loss.

Software Testing is a productive activity which may consume some time but reduces the risk so that we can definitely say it is an essential requirement and a productive activity.

Test automation is a process to which reduces the time of software testing. But it is not possible to start automation at any time during software development. Automation testing can be done after manual testing, automation testing can never be used if requirement are keep changing.

Quality checking is helpful to find following set of properties of any software such as functionality, reliability, efficiency, usability and maintainability.

Methods of Testing

Black-Box Testing

Black box testing is the technique where testing is done without knowing interior working of the application. In this technique tester does not have the access to the source code. It is well suited and efficient for large code segments but it has limited coverage, since only a large coverage selected numbers of test scenarios is actually formed. In this the test cases are difficult to design.

White-Box Testing

This testing is also called open box testing or glass testing. It is a detailed investigation of internal logic and structure of the code. It helps in optimizing the code but sometimes it is impossible to look into every nook to find out every error that creates problems and some of the parts remain untested. Specialized tools like code analyzers and debugging are required in white-box testing So it is not easy to maintain.

Grey-Box Testing

It is a technique of testing to test the application with limited knowledge of internal working of the application. Grey-box testing is a combination of White-Box testing and Black-Box testing. In Grey-box testing tests are redundant if the software designer has already run a test case.

When to stop testing?

As testing is an endless process so it is difficult to determine when to stop testing. It is important to know that no one can claim the testing is done.

There are few aspects that are considered to stop the testing process.

Testing deadlines

Completion of test case execution

When bugs rate falls below the certain level or when higher rating bugs are not identified

Management decision

--

--