- Software Testing Tutorial
- Software Testing - Home
- Software Testing - Overview
- Software Testing - Myths
- Software Testing - QA, QC & Testing
- Software Testing - ISO Standards
- Software Testing - Types of Testing
- Software Testing - Methods
- Software Testing - Levels
- Software Testing - Documentation
- Testing - Estimation Techniques
- Software Testing Useful Resources
- Software Testing - Quick Guide
- Software Testing - Useful Resources
- Software Testing - Discussion
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Software Testing Tutorial
Testing is the process of evaluating a system or its component(s) with the intent to find whether it satisfies the specified requirements or not.
Testing is executing a system in order to identify any gaps, errors, or missing requirements in contrary to the actual requirements.
This tutorial will give you a basic understanding on software testing, its types, methods, levels, and other related terminologies.
Why to Learn Software Testing?
In the IT industry, large companies have a team with responsibilities to evaluate the developed software in context of the given requirements. Moreover, developers also conduct testing which is called Unit Testing. In most cases, the following professionals are involved in testing a system within their respective capacities −
- Software Tester
- Software Developer
- Project Lead/Manager
- End User
Different companies have different designations for people who test the software on the basis of their experience and knowledge such as Software Tester, Software Quality Assurance Engineer, QA Analyst, etc.
Applications of Software Testing
Cost Effective Development - Early testing saves both time and cost in many aspects, however reducing the cost without testing may result in improper design of a software application rendering the product useless.
Product Improvement - During the SDLC phases, testing is never a time-consuming process. However diagnosing and fixing the errors identified during proper testing is a time-consuming but productive activity.
Test Automation - Test Automation reduces the testing time, but it is not possible to start test automation at any time during software development. Test automaton should be started when the software has been manually tested and is stable to some extent. Moreover, test automation can never be used if requirements keep changing.
Quality Check - Software testing helps in determining following set of properties of any software such as
Functionality
Reliability
Usability
Efficiency
Maintainability
Portability
Audience
This tutorial is designed for software testing professionals who would like to understand the Testing Framework in detail along with its types, methods, and levels. This tutorial provides enough ingredients to start with the software testing process from where you can take yourself to higher levels of expertise.
Prerequisites
Before proceeding with this tutorial, you should have a basic understanding of the software development life cycle (SDLC). In addition, you should have a basic understanding of software programming using any programming language.