Software Testing Life Cycle

Software Testing is not considered as a single activity like Do and Close it, but rather it is an ongoing process which never stops (Requirements analysis to test closure, again Requirement Analysis start for new one.) that’s why we consider a sequence of activities (Lifecycle) conducted to perform Software Testing.

software testing life cycle

Points to highlight on STLC process

  • Using certain orders, STLC ensures that the quality standards of an application were met.
  • Each order has its own activities, goals, and deliverables.
  • Each organization follows different phases whereas the basis for STLC remains the same.

In order to understand the orders/phases in details, let’s  consider a real-time example which suits STLC process

Try to build/construct an apartment

Try to build/construct an apartment

For this we have to go through below sequential phases:

Phase 1: Needs/Requirements:

Here will focus on our basic needs to start an apartment, which is very crucial critical analysis.

Action items involved:

  • Type of land
  • Availability of resources like water, ventilation, etc..,
  • Area locality
  • Distance from roads markets educational sectors, offices etc..,

Phase2: Planning

After fulfillment of our needs will plan according to needs

Action items involved :

  • Estimation of human Resources/labor required to complete construction.
  • Amount of materials (concrete cement, sand etc..,)required.
  • Time intervals to complete construction.
  • Blueprint of the apartment.

Phase 3: Designing/Construct:

As per plan, we start to design the building by analyzing the plan.

Action items involved:

  • How many floors, how many flats per floors, how many rooms, dimensions of each room etc..,

Phase 4 : Verify:

Here we will verify the apartment parameters by referring to design/construct.
If actual dimensions of the rooms are not as per design, will do rectification actions and make changes.

Action items:

  • Actual construction will be compared with Design.

Phase 5: Closure activities:

Once all activities complete will happy to go to home

Action items: 

  • We will doesn’t consider how design and verification has been because all are verified correctly and able to see properly constructed home.

similarly, we can describe Software testing life cycle with below phases:

Phase 1: Test Requirement Analysis:

It is an initial phase where Testable Requirements will be analyzed by QA Team which are basic user needs/expectations.

Phase 1 ; Test Requirement Analysis:

Here QA Team builds strong communication Stakeholders (customer, business analyst, technical leads. system architects, user, client, etc..,) to understand the user ideas (requirements) in detail.

Action items:

  • Test priorities and focus of testing.
  • Types of tests like manual or automation will be finalized.
  • Objectives.
  • Goals.
  • Background/History.
  • Functional and Non-Functional Requirements etc..,

Phase 2: Test Planning  

Here higher level people like QA LEAD or QA Manager Will prepare a document which consists of efforts and cost estimates for the project and Complete the test activity.

Test planning

Action items:

  • Prepare Test plan/Test Strategy document.
  • Planning and determining roles and responsibilities of each resource
  • Efforts estimation.
  • Tools used for testing etc…,

Phase 3: Test case/Design development:

Here on seeing the Test plan document, QA Team will Start preparing the Test scenarios, with that, they will write Test casesThese Test scenarios/Test cases will be reviewed by higher level people and approved Test cases will be used to execute the application.

Test case/Design development:

Test scenarios can be both positive and negative checks.

Acton items

  • Prepare Test cases/Test scripts.
  • Test cases/Test scripts review
  • Test Data preparation

Phase 4: Test Execution:

Here QA Team will start executing the application/software (which were migrated from Development team to check) by referring to the written Test Design/Test cases.

 Test Execution:

 

 

 

 

 

If the actual result (from application) doesn’t meet the expected result (from Test cases), then the corresponding test case will be failed. QA Team inform the failed Test case to Developer for correction and test will be carried again after fix from the developer.

Action items:

  • Check application according Test cases.
  • Generate Test results of Test casses to be executed (both pass and fail)
  • Retesting of fixed defects.

Phase 5: Test closure Activities:

Once all Test activities involved in the Test process completes.QA Team will prepare a Test report which shows the Test results by referring to a number of Test cases Written, number of “No Run” Test cases, number of Test cases” passed” (which were passed after fix) etc..,

Test closure Activities:

Basic names for test reports are:

Test summary report.
Test execution Report.
Test status Report.
Test post morten Report.
Action items:
Test Analysis report.
Test final report.

Manual testing interview questions
Manual testing interview questions
1) Difference between Regression and retesting?
 
Retesting:
 
When QA identified a defect, then it should be assign it to Developer. Once developer gives fix, then there should be retesting done to confirm defect has been removed or not. This we call RETESTING”. Retesting will done before regression.
 
Regression:
If any new code added to the application (New CR and Defected fixed code), ensure this new code doesn’t impact on other components of the system. Regression will done after retesting.
 
2) What are different phases in agile process?
 
Agile is very powerful SDLC methodology to implement software in a better manner.
 
  • Sprint planning.
  • Sprint meeting.
  • Sprint product demonstration.
  • Sprint Retrospective.
 3) Who Will prepare RTM(Requirement Traceability Matrix)
 
Requirement Traceability Matrix will ensure 100% test coverage. Which means every test case should be mapped to their corresponding Requirement. In an organization, QA Manager will prepare Requirement Traceability Matrix
  
4) Define Defect Life Cycle with defect status?
 
Defect life cycle starts with when defect found and when it successfully closed(also Known as Bug Life Cycle). In this defect undergoes different status, Which described below.
 
  • New: When QA member finds the defect.
  •  Open: Once QA lead/Manager review defect and change it status to open and assign it to Developer.
  •  Fixed/ Retest: Once defect got fixed from Developer and assign it to QA member.
  •  Re-OPenedIssue after retesting the defect. In this member assign defect to Developer again.
  •  Rejected: There will be two reasons to reject defect from Developer.
  •  Duplicate Defect: Same defect has been raised by another QA member
  •  Not a Defect: Raised defect is not related to Requirement.
  •  Deferred: Fix will be given in further phases.
  •  Closed: Once the retested defect meets user requirement, QA member will close the defect.
 5) Where Test cases will be written in QC?
 
Test cases design will be done in Test Plan.
 
6) Where Test cases will be executed?
 
When tested application is migrated to QA Environment, then Test cases corresponding application will be pulled to Test lab and will be executed.
 
7. Name different requirement documents?
 
  • SRS(System requirement specification)
  • BRD (Business requirement document)
  • TRD (Technical Review document)
  • User Manuals.
  • Use cases
  • User stories(only in agile)
 8. What is meant by test scenario and test case?
 
Test scenario is “what to be tested and test case “How to be tested”. Test scenario is simply one liner statement Which explains about What to test. Whereas Test case gives detailed information about Pre-condition. What to test ,test description, design steps and expected results.
 
9. At What condition automation is preferred?
 
After completion of manual testing (application is in Stable), if any regression/repeated test cases going to execute, in that case Automation is preferred.
 
10) System and E2E testing levels will fall into what method?
 
System and E2E will come into Black Box Testing
 
11) What is meant by alpha and beta testing?
 
In Alpha, Application/Software is under Developer environment. Here we will shows case the application as per the user requirements.
 
Where in Beta, Application/Software is under user environment and Developer will send only few feedbacks to support UAT.
 
12) Name the roles and responsibilities of product owner in Agile?
 
Roles for product owner are:
 
He/She prioritize the Sprint duration.
 
He/She prioritize the User stories for the particular Sprint.
 
13) What things do we discuss in Retrospective meeting in Agile?
 
      Below things are discussed in Retrospective meetings.
 
  • Things went well.
  • Things not went well
  • Things need to be updated.
14) Name few SDLC types
 
SDLC types:
 
  • Water fall.
  • V-Model.
  •  Iterative.
  •  Spiral.
  •  Big bang.
  •  Agile etc.
15) Name types of integration testing?
 
  • Top- Bottom Approach.
  •  Bottom- Up Approach.
  •  Sandwich Approach.
  •  Big Bang Approach.

What is testing tools?

Before knowing Software testing, we need to know what is meant by the word “TEST”.

In real world, we see TEST as

  • Test exam: Conducting an exam to check the students percentage of pass/fail.

Action items: As per the questions given, students answer to the corresponding questions (which means every question should have expected answers.)

  • Test Lab Reports: Here as per the sample given, will go a process of treatment as per the reports.

Action Items: As per the reports will contact doctor and do the corrective actions.

  • Test Drive: Here will check performance (speed, mileage, engine pickup, etc…,) of the driven vehicle.

Action Items: Here we will check whether the vehicle is as per our requirements or not.

  • Test Match: Everyone knows what is meant by Test Cricket, where we mainly focuses on player performance like stamina, sustain, resistance, patience etc…,

Action Items: Player will be IN the team if his/her performance is good.

Now derive, definition of Software Testing from real-time examples:

Software testing is a process of identifying the issues and do the corrective actions and provide quality product of an application/product/software.

Aim: Is to focus on user requirements, needs and expectations of the user/customer.

Job: To find the failures in the application and do the corrective actions as per user needs.

Testing Tools Training in Hyderabad

Testing Tools:

For doing testing in this advanced world, we will use some testing tools in order to fasten the work, bring system into stable, check in multiple applications simultaneously, provide continues reports to user for easy to understand, etc…,

Some of the well-known testing in market are:

  1. TestComplete
  2. Selenium
  3. LeanFT
  4. Tosca
  5. UFT
  6. Rational Functional Tester

 

testing tools in market

 

Automation tools:

Nowadays, development pactices changes frequently and many updates are proposed which aims to provide quality, customer expectations, productivity etc…, and the same should be happen when comes to test automation.

The main Automation tools available in current market are:

  1. UFT
  2. Selenium
  3. Katalon Studio
  4. TestComplete
  5. Rational Software etc…,

 

Automation Testing

Automation Tools

What is meant by Manual Testing?

Basically Software Testing is divided into two types:

  1. Manual Testing
  2. Automation Testing

Manual Testing vs Automation Testing

Manual Testing will be defined as:

Software testing where QA team manually executes written Test cases without any automation involved will be considered it as Manual Testing.

Aim of Manual Testing to find/identify the bugs/defects in the application/product/software using written Test cases and focus on delivery quality application / product / software which meets ccustomer/userneeds.

Manual Testing

indepths of Manual Testing

Why Manual Testing needed?

  • Whatever we expect should come:

Example: When we try to launch https://www.gmail.com login page, it should show me the same, but if it opens https://www.yahoomail.com which is not as expected. Hence there should be a team (QA) to check whatever user needs should come.

Why manual Testing

  • Application behavior varies from one to many users, so it should work as expected when deals with one to many:

Example: Generally we have noticed server slow / down when we try to book railway tickets at Tatkal timings and as well as when server publish exam result. This is mainly due to load on the server. So there should be a team (QA) to check the server performance with one to many user.

  • Application in different places should work without any dependency:

 

Example: # Many people uses different devices like IPhone, Moto, Samsung, MI etc…,

    # Not only this, people uses many browsers like Mozilla, Chrome, IE, Safari etc…,

    #adding to this, many people uses many Operating Systems like Windows, Linux, MAC, Android, IOS etc…,

Hence application should behave same irrespective of devices / Browsers / Operating Systems which means a team (QA) should require to support this checks.

Manual Vs Automation:

As the name Manual suggests, executing the application with respect to written Test Cases. And for Automation, will execute the application with respect to written Test scripts. However we have many difference between Manual and Automation.

Manual

  • Investment required as human are involved.
  • Time Consuming.
  • Less reliable, not accurate due to human errors.
  • Suitable at Exploratory Testing, Usability Testing and Ad-hoc testing.

Automation

  • Investment required on automation tools.
  • It will be faster than manual.
  • More reliable as Automation tools involve.
  • Suitable at regression testing, Load Testing, repeated testing and performance testing.

Manual Testing vs Automation testing

Software Testing Life cycle(STLC):

As a basic example, a human life will start as Infant, later goes through distinct ages to gradually grow and matured to grand age. Similarly, Software Testing Life Cycle has different phases to go though and gives us a Quality Product.

Phases:

  1. Test Requirement ANalysis.
  2. Test planning.
  3. Test case Design and Development.
  4. Test Environment Setup.
  5. Test Execution.
  6. Test Closure.
Software Development Life Cycle(SDLC):

Software Development Life Cycle involves entire product members to design, develop and gives the quality product as per the customer needs.

It is a conceptual and long-term view of software product to be delivered.

Types of SDLC models in real market:
  1. Waterfall Model.
  2. V-Model.
  3. Iterative Model.
  4. Spiral Model.
  5. Big-Band Model.
  6. AGILE Model etc…,

Manual testing interview questions and Answers

Testing Tools training in Hyderabad

Kosmik Provides Testing Tools training in Hyderabad(ClassRoom & Online). We are providing lab facilities with complete real-time training. Training is based on complete advance concepts. So that you can get easily “hands-on experience”. We will give 100% job assistance.