Regression Testing vs Re testing

 


Agenda of the session:


1. Testing Methods:


     Regression Testing

         vs

     Re testing


Retesting:

Testing again and again to make sure the defect has been 

fixed or not


Regression Testing:

Selective retesting of the Software System that has been 

modified to  make sure modifications are working fine 

and modifications have not been impacted by 

previously working functionality. 


Why systems/Applications undergo modifications?/Changes?


          1.Adding New feature/New Technology

          2. Updating/deleting exiting featrures

          3. To improve the performance of the system

          4. To fix the defects in productions system/reported by user


Retesting:


Scenario 1:


1. BA has given the requirement

2. Developer created the Build

3. Env mgmt deployed the build in 

   Testing server

4. Tester executed the application-->Round 1

5. Tester identified a defect

6. Testing team will inform the defect

    to developer

7. Dev has done code changes to fix the

    defect

8. Dev created new build

9. env mgmt team deployed new build in

    testing server

10. Now we will do retesting to make sure

the defect has been fixed-->Retest


Scenario 2:


1. BA has given the requirement

2. Developer created the Build

3. Env mgmt deployed the build in 

   Testing server

4. Tester executed the application

5. Tester identified a defect

6. Testing team will inform the defect

    to developer

7. Developer rejected the defect stating 

   it is a "Invalid defect"

8. Tester will do retesting to make sure

   the defect is really invalid or not



Scenario 3:


1. BA has given the requirement

2. Developer created the Build

3. Env mgmt deployed the build in 

   Testing server

4. Tester executed the application

5. Tester identified a defect

6. Testing team will inform the defect

    to developer

7. Dev has done code changes to fix the

    defect

8. Dev created new build

9. env mgmt team deployed new build in

    testing server

10. Now we will do retesting to make sure

   the defect has been fixed

11. Retesting failed so again we have

    reopened the defect to developer

12. Developer again made some changes

13. Dev created new build

14. env mgmt team deployed new build in

    testing server

15. Again we will do retesting to make

    sure the defect has been fixed

-------------------------------------------

Scenario 4: ReTesting

1. BA has given the requirement

2. Developer created the Build-->B1.0

3. Env mgmt deployed the build in 

   Testing server

4. Tester executed the application

5. Tester identified a defect-->B1.0

6. Testing team will inform the defect

    to developer

7. Developer rejected the defect stating 

   it is a "Invalid defect"

8. Tester will do retesting to make sure

   the defect is really invalid or not

9. Testing team observed that it is "valid"

10. Again we will reopen the defect to 

    developer

11. Developer will don code changes

12. Env team will deploy latest Build

13. Now testing has to perform retesting

    to make sure defect has been fixed or not

--------------------------------------------

Scenario 5: Regression Testing


When we go for regression Testing?


1. If any modifications made by development

    team to fix the defects


     1.1 req change

     1.2 Des change

     1.3 Code change


Retesting  to failed test case to make sure

it is working after developer changes-->Retesting


Retesting previously working test case to 

make sure modifications has not been impacted

previously working functionality

-->Regression Testing


Regression testing is a kind of retesting


-----------------------------------------

Expected:


Screen 1: Back up of sewerdrain


Screen 10: Back up of sewerdrains



Actaul:


Screen 1: Back up of sewerdrains-->Fail


Screen 10: Back up of sewerdrains-->Pass


Latest Build retest:


Screen 1: Back up of sewerdrain-->Pass


Screen 10: Back up of sewerdrain-->Fail


----------------------------------------

Scenario 6:Regression Testing


Step 1: BA team has given the requirements


Step 2: Dev Built system


Step 3: Env team deployed system


Step 4: Testing team completed testing


Step 5: Now due to client urgency BA team


has added 10 more requirements


Step 6: Dev has to modify the existing code


Step 7: Dev will create latest build


Step 8: Latest build will be deployed 

           in testing server


Step 9: Now testing team focus will be on

          9.1 Newly added features

          9.2 Regression testing on 

               previously working

                features


Project:


Release 1:


Newly added Features(100) +

           Retesting of defects +

            Regression testing



Release 2: 

Addition of new featueres


UI+ Application Logic+ DB+ Performance+

    +

Production defects

(A feature is not working in live 

   environment)


Defect Lekage



-------------------------------------------


Gmail: 


Release 1: 2004 Jan-->100 R-->1000


Release 2: 2004 April-->120 R-->5000


Release 3: 2004 Dec-->160 R-->10000


40 R+ 160

Code Freeze


Regression Testing: Selective Retesting of 

S/w system that has been modifed to make

sure these modifications have not been

impacted previously working functionality



Release 1: 100 R-->2 Months


Release 2: 120 R--> 20 R-->2 weeks+ 1 Week


Limited time but 100% Regression


1. Testing size


2. Selective VS Full


3. Automation

    

 100-->70%


How to do selective Regression?


1. Risk Analysis


2. Priorotization


--------------------------------------------


IQ:

-----------------------------------------------------

Definition:


Selective retesting of software system that has been 

modified to make sure defect has been fixed and it is not 

impacting any sideaffects on previously working 

functionality

--------------------------------------------------


Full Regression vs Selective regression



1. Automation


2. Risk Analysis and priorities


3. We wil divide our test cases into High Risk,

   Medium Risk and Low Risk test cases


----------------------------------------------------------------------

 Interview Questions on Regression Testing and Retesting?


  1. What is Retesting?

  2. Why we need Retesting?

  3. When we do Retesting? 

  4. How to do Retesting?

  5. What is Regression Testing?

  6. Why we need Regression Testing?

  7. When we do Regression Testing? 

  8. How to do Regression Testing?



  9. What are the challlenges you have faced whie doing Regression?



 10. Regression Testing is strong candidate for Automation Testing?

           Justify this statement?

Ans: Repetetive-Every Release 


 11. How to select Regression suite if we are not having time to 

      do full regression Testing?

Ans: High Risk + High Priority 


 12. Do we need to change Regression Approach every release?

Ans: Yes


 13. Explain differences between Retesting and Regression Testing?

   Retesting focus on checking failed test cases now working after Bug fix,

  Regressionfocus on checking previously working tests are still working

  after changes 

 14. Explain one defect which you have identified while doing Regression Testing?


15. How much time is required to perform regression in your project?


 16. How frequenty your team performs Regression in your project?


 17.  How much% of Manual Regression your team is performing and 

   howmuch % of AUtomation Regression your team is performing?

 18. Due to slowness in datbase server,dev changed DB server from Sybase to Terada? do we need o perform 

 only functional regression or performance Regression is also mandatory?

   

 Regression Testing must be performed on code freeze build

Coding for majority of the requirements is completed

Application must be stable to do Regression


Dev is doing code changes can we do regression simutaneously?














 Defect Triage meetings






  Challenge in Regression Testing:


1. Performing 100% regression testing in shortspan of time

    with minimum testing cost


 Ans: 1. Automation Regression testing

      2. Selective Regression

         Note: Regression optimization Technique

                Ex: Test critical areas first

                    Cover high priority test cases in

                         regression

                    Cover frequently failed test cases











Smoke Testing

Sanity Testing

BVT Build Verification Test


1. Quality Assurance vs Quality COntrol

2. Verification vs Validation

3. WBT VS BBT

4. Functional Testing vs Non Functional

5. Functional vs Perf Test

6. Load Test vs Stress Test

7. Regression Test Vs Retest



When we go for regression Testing?

Code freeze

Application must be stable

No open defects associated with new functionalities










































         















































 

































Comments

Popular posts from this blog

Batch 189

smoke and Sanity Testing

Case