Monday 24 April 2017

Manual testing Basics : Chapter 1



                                       Software Testing
“The goal of a Software Tester is to find bugs, and find them as early as possible and make sure they get fixed”
·          Software testing is the process of evaluation a software item to detect differences between current behavior of software and expected behavior defined by client. Software testing is a process used to identify the correctness, completeness, and quality of developed computer software. It includes a set of activities conducted with the intent of finding errors in software so that it could be corrected before the product is released to the end users.
·         In simple words, software testing is an activity to check whether the actual results match the expected results and to ensure that the software system is defect free.

---> What is Manual Testing?
Testing activities performed by people without the help of Softer Testing Tools.
Procedure:
            1) Writing Test Cases by using SRS, FRS and Use Case documents
            2) Reviewing Test Cases
            3) Executing Test Cases
            4) Finding & Reporting Bugs
            5) Getting it Fixed
Quality is defined as meeting the customers’ requirements in the first time and every time. How the system is well designed and performing.
  
Verification is the process confirming that software meets its specifications i.e. “Are we building the Product Right?” – Mostly QA engineers involved in this verification process.
-It includes Static Testing (by reviews, walk through and meeting to appraise document, plans, code and requirement). It is also called In-process testing and Quality Assurance.
-Verification begins in the initial phase and will be always associated with all phases of SDLC.

Validation is the process confirming that it meets the user’s requirements i.e. "Are we building the Right Product?" – Primarily test engineer involved. Also called as end process testing and Quality Control.
-It includes Dynamic testing (Unit testing, System testing, System integration etc.)
it appears after development phase. It is to validate the system against the requirements.”

---> When we know that testing is complete & when we have to stop our testing.
We never do exhausting testing i.e. Complete testing is not feasible for almost all projects. So we try to find optimum level of testing for a given project. 

Below are the points which indicate that testing is complete:
1. The exit criteria that was mentioned in the test plan document is achieved.
2. When we achieved number of successful test case execution at a specified level (all critical &key test cases should be executed and passed, even if certain test cases fail, may not be ‘show stoppers’ or  low priority.). 
In Real time, 100% defect free software is impossible & finding all bugs are impossible. 
So we try to do locate bugs based on priority & risks & defect clustering as root cause analysis that’s why we start testing as early as possible. Testing involved from first level of SDLC (i.e. involved in each level of software development)
3. When rate of bug finding decrease from certain specified level & all high priority & critical defect resolved).
4. When we don't have enough time to perform more test and have achieved a specified level of quality.( Testing should be stop if time allocated to project in test plan is complete)
5.Testing budget of the project or when the continued testing doesnot justify the project cost. The budget allocated to project should not be over than defined limit
6. Functional coverage, code coverage meeting client requirements as per the target benchmark.

**Testing is decided to take an account of the level of risks   eg. Time & budget.



No comments:

Post a Comment

Manual Testing : Chapter 2

                                                    Software Testing How can be test a software? 1. Manually. 2. Automation to...