What is Software Testing and Types of Software Testing


 Software Testing And Type Of Software Testing

This blog is designed for the fresher’s, intermediate and professionals on testing with the concepts of manual testing and Automation with Selenium. The main focus is, make a person ready for the interview with lots of confidence in Testing concepts with Automation skills.

What is software Testing?

As clear from the name software testing we have two different parameters i.e. Software and Testing


Generally, Software is a collection of programs to perform a certain task. Like additional function, we take three parameters A, B, and C. In this we add the value of A and B and store that in C

A=20, B= 40, C= A+B;

So, we make a small software to do an additional calculation.

According to a Functional point of view, Software is a collection of programs as per customer requirements which will perform that particular task.

Types of Software

We have two types of software: –  System Software and Application software

System Software: -If we want to perform some operation on a system you need to have one base is an operating system. System Software is nothing it’s an Operating System. For example, Microsoft operating system (all Versions), UNIX and LINUX (fedora, Solaris, red hat etc.).

Application Software: – It’s collection of programs to perform a certain task by different users according to their requirement. For example, Baking Software, E-Learning Software etc.


Testing is to find the problems or errors. For example, we went shop to buy a blue pen in 10 rupees, cello company, and good look. Before buying that pen check all the requirement with a working condition this process is called Testing.

Software Testing

Software testing in general point of view we can say that Software testing is finding the defects, in the software application.

In functional point of view, it is the process which helps to identify correctness, completeness, security and quality of developed software application.

Correctness: – Requirement of a user are implemented correctly.

Completeness: – All the baseline requirements are implemented.

Security: – Application allows access only to authentic users.

Quality: – Application should full fill customer needs.

Skills require for Software Testing

  1. Operating System Skills

  2. Programming Skills

  3. Documentation Skills

  4. Technical Skills

  5. Communication Skills

  6. Web Environment Skills

  7. Domain Skills.

Types of Software Testing

Basically, software testing has two type

  1. Manual Testing

  2. Automation Testing

    Furthermore, Software testing has more than 100 types

  • Acceptance Testing

  • Accessibility Testing

  • Active Testing

  • Agile Testing

  • Age Testing

  • Ad-hoc Testing

  • Alpha testing

  • Assertion Testing

  • API Testing

  • Unit Testing

  • Upgrade Testing

  • Thread Testing

  • Top Down Integration Testing

  • System Integration Testing

  • System Testing

  • Structural Testing

  • Stress Testing

  • Storage Testing

  • Smoke Testing

  • Stability Testing

  • Static Testing

  • Statement Testing

  • Scalability Testing

  • Scenario Testing

  • Sanity Testing

  • Security Testing

  • Requirements Testing

  • Recovery Testing

  • Regression Testing

  • Ramp Testing

  • Qualification Testing

  • Performance Testing

  • Penetration Testing

  • Path Testing

  • Parallel Testing

  • Passive Testing

  • Pair Testing

  • Orthogonal Array Testing

  • Operational Testing

  • Negative Testing

  • Non- Functional Testing

  • Modularity – Driven Testing

  • Mutation Testing

  • Model- Based Testing

  • Manual- Support Testing

  • Manual Scripted Testing

  • Loop Testing

  • Localization Testing

  • Load Testing

  • Keyword-Driven Testing

  • Inter- Systems Testing

  • Internationalization Testing

  • Install/ Uninstall Testing

  • Interface Testing

  • Integration Testing

  • Hybrid Integration Testing

  • Globalization Testing

  • GUI Software Testing

  • Glass Box Testing

  • Gray Box Testing

  • Gorilla Testing

  • Fuzz Testing

  • Functional Testing

  • Formal Verification Testing

  • Fault Injection Testing

  • Equivalence Partitioning Testing

  • Exploratory Testing

  • Endurance Testing

  • End- to- End Testing

  • Error- Handling Testing

  • Domain Testing

  • Dynamic Testing

  • Dependency Testing

  • Destructive Testing

  • Decision Coverage Testing

  • Conversion Testing

  • Context Driven Testing

  • Conformance Testing

  • Concurrency Testing

  • Compliance Testing

  • Condition Coverage Testing

  • Configuration Testing

  • Component Testing

  • Comparison Testing

  • Compatibility Testing

  • Code Driven Testing

  • Black Box Testing

  • Breath Testing

  • Branch Testing

  • Bottom-up integration Testing

  • Boundary Value Testing

  • Binary Portability Testing

  • Bis Bang Integration Testing

  • Benchmark Testing

  • Beta Testing

  • Backward Compatibility Testing

  • Basic Path Testing

  • Automation Testing

  • All Pars Testing

  • User Interface Testing

  • Usability Testing

  • Volume Testing

  • Vulnerability Testing

  • White box Testing

  • Workflow Testing


For more detail read software testing life cycle (STLC)


“Related post”

Software Development life cycle

Software Testing Life Cycle

Test Case Documentation

Alpha and Beta Testing

Regression Testing

Smoke and Sanity Testing

Software Testing

Validation and Verification


Entry and Exit Criteria in software testing

Integration Testing 

Automation Testing






Leave a Reply

Your email address will not be published. Required fields are marked *