Wednesday, 19 August 2015

Fundamentals of Software Testing .

Now a days I observe many individuals , software professionals , students and MNC companies opting Testing tools as their stream . I've some questions for them . What is Testing? Why we do testing ? Is it important , if so  when we have to start testing ? 

"Testing is nothing but executing a program or system with intend of finding of errors "it was a definition said by MYERS in 1979. I simply want to say that it is an investigation done to find errors or bugs . Errors are the mistakes or wrongs made by humans which causes faults in the application or software which may result in the failure of the end product /application/software. 
Generally we call errors as bugs in Software.
Why do software have bugs ? There are certain reasons why we have bugs.Because of incompetency technically, human minds are tend to make mistakes not intentionally but for some other reasons , lack of time , lack of budget , poor understanding between the client and the developer, quality makes a great sense . The only solution for all these problems is to follow a disciplined and well framed software approach is needed .
Quality plays an important role in software field because quality is degree to which a system ,component or process meets the specified requirement or end user expectations or not. It is helpful in long run of the system. The factors which the quality mainly concentrates are called as quality attributes.They are Correctness, Usability , Portability , Flexibility , Maintainability , Re-usability ,Efficiency,Reliability ,Inter- operability, Integrity , Testability . There are two types of quality approaches one is Quality assurance and the other is Quality Control. Quality assurance is defect prevention oriented and Quality control is defect detection process. Quality assurance mainly a proactive process and Quality control is reactive process. So in this quality plays a main role in Testing criteria. 


Why we do testing ? In order to deliver defect free product to the customer . To ensure and reach the customer expectations. To define the quality of the application. To stay long time in the business. So without undergoing testing no application or software is released into the market. When we do testing ? Testing should come as early as possible in the development process because faults found earlier are cheaper to fix and easy to fix. It avoids fault multiplication that means if a fault is neglected it will lead to another fault if it has been eradicated at the earlier stages then it will avoid increasing faults, so testing should come as early as possible in the development stages only. 
There are two types of testing 



  • Manual Testing
  • Automation Testing


Manual Testing : 
If the application is tested by the testers manually , then this testing is called Manual testing. When they detect a defect they report to the developers, the developers fix the bug and sends them to the testing team again . The testers retest it again to check whether the defect is fixed or not .  
Automation Testing :
If the application is tested by the testers using an automation tool , then this testing is called automation testing. When the testers detect a defect they report to the developers , the developers fix the defect and sends to the testing team again. The testers retest it again to check whether defect is fixed or not. 
Generally testers ,do these testing process ,Some developers also do these testing which is called as white box testing 

No comments:

Post a Comment