0% found this document useful (0 votes)
11 views

TestingNotes

The document provides an overview of software testing, including its definition, methodologies, and the software development lifecycle (SDLC). It discusses the importance of testing in preventing losses and outlines various testing activities, roles, and techniques. Additionally, it covers Agile methodologies, Scrum processes, and different types of testing such as functional and non-functional testing.

Uploaded by

vkarthickkumar25
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views

TestingNotes

The document provides an overview of software testing, including its definition, methodologies, and the software development lifecycle (SDLC). It discusses the importance of testing in preventing losses and outlines various testing activities, roles, and techniques. Additionally, it covers Agile methodologies, Scrum processes, and different types of testing such as functional and non-functional testing.

Uploaded by

vkarthickkumar25
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 18

Software Testing Introduction

What is Testing
SDLC Life cycle
Software Testing Methodologies
Requirements Evaluation

Testing is checking for the defects , checking if product is as per customer’s


expectations
We evaluate the requirements documentation against the product

Losses due to lack of Software Testing :


Loss of Money
Loss of Time
Loss of Business Reputation

Activities of Software Testing :


Test Planning
Test Analysis
Test Designing
Test Implementation
Report the test Progress

Manual Testing : Write Testcases and then we execute testcases , without any tool
support

Automation Testing : Testing using Tools like selenium , UFT

Who does Testing ?


Developers do the testing – Unit Testing
Users do the testing – Acceptance Testing
Everyone does the testing ----- Stakeholders

When Do we do testing ?
Testing is done right from the requirements gathering
Static Testing – testing of documents and code
Dynamic Testing – run the testcases over the product
When dynamic testing –
-Build ready and thoroughly tested by dev team
-Testcases are written and reviewed
- Test Environment should be all set
- Test data should be ready
- Testers should be ready

When to stop testing :


- All of the planned testcases are executed and there are no any critical defects in
the product
- Management decides considering many of the business factors
- Risk is minimal

Software Development Lifecycle :

- Sequential Software Development Model ( WaterFall Model)


When to use Waterfall Model
1. When the requirements are constant and not changed regularly
2. A project has enough amount of time to develop.

V- Model : Early Testing , Ontime delivery


Iterative Incremental Model : Based on V-Model, we deliver the chunk of
prioritized requirements in iterations and then keep on adding more
requirements as increments.
Agile Methodology : Its not a Model, but it’s a way we work.

• Quick/ Swift
• Based on iterative increamental model
• Focus on working software
• Less Documentation
• 2-4 weeks for iteration

Spiral Model : objective is : Risk Handling


Testers Quality :
Positive Psychology / Attitude
Start with collaboration rather than battles
Communicate test results in neutral , fact focused, do not criticizing developers
Try to understand how other person feels
Confirm that the other person has understood clearly what u r saying
Critical eye, attention to detail, Motivated, positively behaviour

STLC: Software Testing Lifecycle

Test Design Techniques :


EP
BVA
Decision Table
State Transition Testing
Use Case Testing

QA / QC :
QA ( Quality Assurance) : QA is an Activity that ensures the approaches, techniques,
processes are implements and followed correctly to prevent the defects.
It’s a defect prevention technique

Quality Control : We test the working software to find defects and controlling the
quality
Reactive process

QC is a subset of QA

Regression Testing :
Type of testing which is performed to find out whether the changes which r done
recently had caused new defects in the existing functionalities.

Agile Methodology : (Continuous Iterations)

Why to go for agile

Increased customer satisfaction


Lower defect rates
Faster development times
Rapidly changing requirements - uses early feedback on technology features of project
deliverables

Disadvantages :
Poor resource planning may happen
Limited Documentation
No Finite End

Agile Manifesto – Policy


Principles of Agile Manifesto

12 Principles of Agile as Propagated by Agile Alliance are:

1. One of the top priorities of the Agile approach is to aim for

customer satisfaction through prompt and continual

delivery of value-added products.

2. The agile approach has to embrace changes, even at later

stages of development. Change is considered as a valuable

agent offering a competitive edge to the customers.


3. Working software should be delivered to the customers for

any feedback or suggestions at a periodic interval of weeks

or months, preferably in shorter time spans.

4. The business management and system developers should

work collaboratively throughout the project cycle

5. The agile approach believes in assigning projects to

motivated individuals and provide the individuals with a

good working environment and support system by

inculcating trust in them to get the work done.

6. Agile Values And Principles are about fostering face-to-face

discussions and promoting them as an effective means

of communication to and within the team of developers

7. Working software is one of the primary means of measuring

system progress in agile.

8. The agile approach aims at facilitating consistent and

sustainable progress in system development. The

stakeholders are required to maintain steady and continual

velocity in product development.

9. Staying updated by bringing in continual technological up-

gradation and efficiency facilitates the agile approach


10. The agile process is about adopting simplicity by reducing

comprehensive tasks and focusing on the tasks that

essentially add value.

11. Self-organized teams help in bringing good structures,

requirements, and developments. The agile teams are proactive,

which enables them to overcome any hurdles and minimize

errors to deliver excellence.

12. Agile teams continually upgrade themselves and aim to

become more productive by adapting to changes effectively.

The development teams constantly mold and are at peace with the

changing external conditions. It enables continual improvisation to

deliver value

Introduction to Scrum

Scrum is an agile software development process to manage software projects

Teams using Scrum focus on delivering working software to their customers on a

frequent basis
There are three main roles in a Scrum team: ScrumMaster, Product Owner, and

Development Team including tester(usually 1 tester)

The ScrumMaster role is somewhat similar to a project manager.

ScrumMaster is responsible for making sure the team is moving as quickly as

possible, this role is more of a facilitator and coach than one that exercises control

and makes decisions. The ScrumMaster must be available at all times to remove

roadblocks and ensure that the team has all required resources for the job.
The Product Owner is a representative from the business side who determines

the priorities of the items to be developed. The Product Owner must be either on

site or highly available to the team at all times to answer questions and clarify

unclear requirements

The Development Team in Scrum can be composed of developers, QA, and

business analysts. They work technically.

Scrum Process:

Scrum projects are managed in short iterations (Sprints) where the team works

on the most important items of the project, as defined by the Product Owner, and

delivers potentially shippable code at the end of each iteration.

Everything in Scrum revolves around Sprints

Product Backlog - The entire list of requirements

Sprint Backlog – list of the requirements for one sprint


Daily Meeting : During the Sprint, team members get together on a daily basis

to report status to the team. The Scrum daily meeting-or daily scrum-is a

short meeting time boxed at 15 minutes in which each participant answers

three questions:

 What did you do since the last daily meeting?


 What will you do from now until the next daily meeting?
 Are there any roadblocks in your way?

Definition of “Done” in scrum

The Definition of Done is an agreed-upon set of items that must be completed before a

project or user story can be considered complete.

What is User Story : A user story is the smallest unit of work in an agile framework. It's an

end goal, not a feature, expressed from the software user's perspective
Sample User stories :

As a customer, I want to easily transfer money between my

accounts

As a manager, I want to be able to understand my

colleagues progress, so I can better report our success and

failures.

What are Story Points?

story point is a metric, used in agile project management to figure out


the implementation difficulty of a certain user story
Epic – Parent of multiple user stories

Smoke Testing:

Done to ensure that acute/basic functionalities of software are working well .

Done after a build is produced.

It’s a quick and shallow check

Sanity Testing : used to check if specific low level functionalities are working fine or

not
Done before product is released to the customer

It’s a detailed check of the functionalities

Verification : making sure that product is being developed the right way. = Static

testing

We do not run the product, but we verify if product is being developed in the right

way/manner.

Validation : Making sure that product is as per customer’s requirements. = Dynamic

testing

We run the product and verify if product is as per customer’s requirements

Verification is followed by Validation

Test Policy : One for the complete organization

Test Strategy : Separate Test Strategies per group project

Risk Based Testing : Risks related with the product are considered first and

testcases are prioritized based on the risks identified

Regression Averse : Regression is performed often in intervals

Reactive Test Strategy – we execute the product and we find defects. Depending on

the defects, we take actions


Test Plan – Project based test execution planning

Functional Testing : Testing the product as per requirements whether it is functioning

as per requirements or not.

Non functional Testing : Testing the product’s behavior.

Performance Testing – Response time of the app – 3s

Load Testing : Normal load is given to the application and measure the

performance(response time)

Stress Testing : Extreme load is given to the website and measure the performance

Volume Testing : Extreme Data load is given to the website and measure the

performance

Portability testing, reliability testing, security testing

You might also like