Friday, 6 June 2014

Quality Assurance and Testing

Quality Assurance (QA):- 

QA is a means of preventing mistakes or defects in 


manufactured products and avoiding

bugs when delivering a project or a product to the client.
 

It is also a mind set that focuses on doing everything as well 


as possible.


QA requires high levels of interaction and an ability to 


understand the needs of multiple people, 

groups and stakeholders to make effective decisions on 


quality.

Requires a passion for excellence and an ability to 


work jointly with teams.


QA should be able to answer if
 the business requirements 

are an accurate reflection of the 

customer's needs? 


And should represent the customer and present their 


needs regarding measurable business value.


Testing:-


Software testing is a set of activities that involves planning 


and preparing on what and how to

test the software.


Role of Test Engineer/Analyst is finding defects and 


validating the software against the 

requirements.



Testing is also a process of validation and verification:-


Validation: Answering to the question "Have we built the right software?" is validation.


Verification: Answering to the question "Have we built the software right?" is verification.



Software Testing Methods:-





There are two types of testing 1. Black box testing and 2. White box testing.


Black box testing:- Testing does not require understanding of


internal logic of the software. It purely validates the output of 

the software based on the inputs.

Test inputs are derived from business rules using techniques 


like Equivalence Partitioning and 

Boundary Value Analysis. 



White box testing:- This kind of testing needs understanding internal 
code, underlying algorithms and is

usually performed by developers.