Ticker

6/recent/ticker-posts

Introduction to Software Testing


What is a Bug?
Informally, it is "what happens when software fails", whether the failure was

- Inconvenient

- Catastrophic

✅Terms for software failure

* Fault.            * Failure         * Defect.  
 * Anomaly.     *Incident.     * Variance
* Problem.         *Error.          * Bug
* Inconsistency.  * Feature

🔻Product Specification: “an agreement among the software development team. It defines the product they are creating, detailing what it will be, how it will act, what it will do, and what it won't do"

🔻Formally, we say that a s/w bug occurs when one or more of the following five rules is true:  when the software

🔻 doesn't do something that the product specification says it should do 

🔻does something that the product specification says it shouldn't do.

Symptoms and Root Causes of Bugs

🔻Inaccurate understanding of end user needs

🔻Inability to deal with changing requirements

🔻Modules that don't fit together

🔻Software that is hard to maintain or extend • Late discovery of serious project flows

🔻Poor software quality

🔻• Unacceptable software performance

🔻Team members in each other's way, making it impossible to reconstruct who changed what, when, were and why

✅Software Testing and its Role

Software Testing is a method to check whether the actual software product matches expected requirements and to ensure that software product is Defect free.

Role:-The purpose of software testing is to identify errors, gaps or missing requirements in contrast to actual requirements.

Software Testing Life Cycle

STLC has the following different phases but it is not mandatory to follow all phases. Phases are dependent on the nature of the software or the product, time and resources allocated for the testing and the model of SDLC that is to be followed.
                *Software Testing Life Cycle*

There are 6 major phases of STLC

🔻Requirement Analysis
                      When the SRD is ready and shared with the stakeholders, the testing team starts high level analysis concerning the AUT (Application under Test).

🔻Test Planning - Test Team plans the strategy and approach.

🔻Test Case Designing - Develop the test cases based on scope and criteria's.

🔻Test Environment Setup - When integrated environment is ready to validate the product.

🔻Test Execution - Real-time validation of product and finding bugs.

🔻Test Closure - Once testing is completed, matrix, reports, results are documented.

✅What does a Software Tester Do?

The goal of a software tester is to - 

🔻find bugs

🔻find bugs and find them as early as possible 

🔻find bugs, find them as early as possible, and make sure they get fixed

✅What Makes a Good Software Tester?

They are explorers.

They are troubleshooters. 

They love puzzles.

They are relentless. 

Software testers keep trying.

They are creative.

They are ( mellowed) perfectionists.

They exercise good judgment.

They are tactful and diplomatic.

They are persuasive.

✅Precision vs accuracy

🔻 Testing a simulation game like a flight simulator..

          🔻Should you test precision or accuracy?

🔻How about a calculator?

          🔻Depends on what the product is and what the development team is aiming at !!

✅Quality Assurance(QA)

🔻Quality ܀

Quality is extremely hard to define, and it is simply stated: "Fit for use or purpose." It is all about meeting the needs and expectations of customers with respect to functionality, design, reliability, durability, & price of the product.

🔻Assurance

Assurance is nothing but a positive declaration on a product or service, which gives confidence. It is the certainty of a product or a service, which will work well. It provides a guarantee that the product will work without any problems as per the expectations or requirements.

Quality Assurance(QA)

🔻Quality Assurance in Software Testing is defined as a procedure to ensure the quality of software products or services provided to the customers by an organization.

🔻Quality assurance focuses on improving the software development process and making it efficient and effective as per the quality standards defined for software products. 

Quality Control(QC)

🔻Quality control popularly abbreviated as QC. 

🔻It is a Software Engineering process used to ensure quality in a product or a service.

🔻It does not deal with the processes used to create a product; rather it examines the quality of the "end products" and the final outcome.

🔻 The main aim of Quality control is to check whether the products meet the specifications and requirements of the customer.

🔻If an issue or problem is identified, it needs to be fixed before delivery to the customer.

Post a Comment

0 Comments