Our software testing tutorial is designed for beginners with little or no knowledge of software testing. With our manual testing tutorial series, you will learn about the different types of testing, and testing concepts with a practical approach.
We will start this series with the basics of software testing. After that, as the course progresses, we will move to more advanced topics.
Manual Testing Tutorial
Complete software testing tutorial series covering the different theoretical and practical testing concepts. In addition, we will learn test case creation using popular test case design techniques and easy-to-understand examples.
- What is Software Testing?
- Quality Assurance
- Verification and Validation
- SDLC – Software Development Life Cycle
- STLC – Software Testing Life Cycle
- Different Levels of Testing
- Test Design Techniques
- Specification-based Test Design Techniques [Black-box]
- Equivalence Class Partitioning
- Boundary Value Analysis
- Structure-based Test Design Techniques [White-box]
- What is a Test Strategy?
- What is a Test Plan?
- Test Scenario – Definition & Examples
- What is a Test Case?
- Test case Template (Download Xls)
- How to write effective test cases?
- Error, Defect, Fault, Failure, and Bug
- Defect and Defect Reporting Template
- Defect Life Cycle
- Priority & Severity of Bugs
- Requirement Traceability Matrix
Software Testing Guide & Checklists
This section contains real-time software testing resources. The tutorial guides and checklists shared here will help you in your real-time testing projects. For instance, the checklist for web application testing will help you with the testing of different websites.
- Web Application testing with checklist – Complete website testing guide with a checklist.
- Mobile application testing with checklist – Complete mobile app testing guide with a checklist.
- Banking application testing with checklist – BFSI application testing with a checklist.
- Big Data testing with checklist – What is Big data? How to do big data testing?
- Payment gateway testing – Complete payment gateway testing guide with test cases.
- Game testing – Complete guide to test a gaming application.
Different Types of Testing
In this section, we have covered the different aspects of some of the most popular testing types. With these tutorials, you will be able to know the definition, features, advantages, and disadvantages of the different software testing types.
- Manual Testing – Testing performed manually by humans.
- Automation Testing – Performed using automated test scripts.
- Performance Testing – For finding the performance attributes of a website.
- Load Testing – Performance testing of an application at an expected load.
- Stress Testing – Performance testing of an application at a much higher load.
- Endurance Testing – Performance testing carried out for long durations.
- Volume Testing – Conducted with large files or data for processing.
- Functional Testing – Testing an application against its functional requirements.
- Non-Functional Testing – Checking the non-functional quality attributes of an application.
- Black-box Testing – Testing an application by considering it as a black-box.
- White-box Testing – Testing an application with the knowledge of its internal architecture.
- Grey-box Testing – Testing an application with partial knowledge of its internal working.
- Negative Testing – Checking the robustness of an application with invalid data.
- Alpha Testing – Testing performed by the internal team at the developer’s site.
- Beta Testing – Conducted by the end-user at the end user’s site.
- Regression Testing – To ensure that code changes haven’t affected existing features.
- Retesting – Done to validate if the bug fixes are working fine or not.
- Smoke Testing – To check if the build is fit for carrying out exhaustive testing.
- Sanity Testing – Subset of regression testing carried out on a limited functionality.
- Monkey Testing – Testing performed with random inputs and without any test cases.
- Adhoc Testing – Testing conducted without any planning and documentation.
- Usability Testing – Testing the ease of use of an application.
- Security Testing – Finding security vulnerabilities in an application.
- Scripted Testing – Testing conducted with well-documented test cases.
- Exploratory Testing – Testing conducted without any documented test cases.
- Cross-browser Testing – Checking that the application works in all the supported browsers.
- Compatibility Testing – Checking the application’s compatibility in different environments.
- Reliability Testing – Checking if the application is reliable for its intended use.
- ETL Testing – Checking the Extract-Transform-Load operations in a DB or DWH.
- Database Testing – Checking data integrity, schema, table, etc in a database.
- Agile Testing – Testing practice following the principles of agile methodology.
- Mutation Testing – Checking s/w quality by intentionally mutating the source code.
- UAT Testing – Testing carried out by the end-user before releasing to production.
- Use Case Testing – Testing carried out with the help of use cases.
- Big Data Testing – Complete guide to test big data applications.
- Salesforce Testing – Introduction, types, levels, and best practices.
- A/B Testing – Showing two variants of an application to a different set of users and then analyzing which one is better.
- Confirmation Testing – Confirmation testing is a type of software testing technique used by testers to check if the previously posted bugs are rectified or not.
- Exhaustive Testing – Testing every possible scenario of the application under test.
- Recovery Testing – Testing performed to check if the system under test is capable of recovering from an application crash or not.
- Robustness Testing – To test the behavior of software with invalid inputs and unexpected events.
- Decision Table Testing – A testing technique based on decision tables. Also known as cause-effect testing.
- Accessibility Testing – To validate an application, website, or software product for its usability by people with hearing, vision, color blindness, and motor disabilities.
- Pilot Testing – It is a software testing type that involves a group of real users to validate software or some components of the software.
- Component Testing – Involves testing each component of a software product individually.
Difference between some of the most popular and confusing testing terms. This will help you in your QA interviews.
- Manual and Automation Testing
- Smoke and Sanity Testing
- White-box and Black-box Testing
- System and Integration Testing
- Verification and Validation
- Quality Assurance and Quality Control
- SDLC and STLC
- Test Plan and Test Strategy
- Test Case and Test Scenario
- Agile and Waterfall Model
- Agile and Scrum Methodology
- REST and SOAP Web Service
- Web Application and Desktop Application
- Web Service and Website
- Assert and Verify
- Error, Defect, Fault, Failure, and Bug
Commonly Asked Test Scenarios
Here, we have covered some of the most frequently asked test scenarios in the testing interviews. These resources will help you in test case creation and testing of different types of applications.
|Test Scenarios for Login Page|
|Test Scenarios for Pen|
|Test Scenarios for Registration Page|
|Test Scenarios for ATM Machine|
|Test Scenarios for E-commerce Website|
|Test Scenarios for Facebook|
|Test Scenarios for Google Search|
|Test Cases for Payment Gateway|
For more such test scenarios, check – Test Scenario Examples.
ISTQB Certification Exam
ISTQB stands for – “International Software Testing Qualification Board”. It is an international organization that provides different general and specialist testing certifications.
Software testers need to register for different tests and on passing the same, they get ISTQB certified.
Software Testing Tools
Here, we have compiled some of the top software testing tools for Automation, Performance, Android and IOS applications.
Manual Testing Interview Questions
Be interview ready with our 100+ manual testing interview questions and answers. We have covered the interview questions for both freshers and experienced professionals.
Frequently Asked Questions
In order to learn software testing, you should first start with the basics of software testing fundamentals. After that, you should learn the different testing artifacts like test cases, test plans, test strategy documents, etc.
Software testing requires different skill sets than software development. You need to have skills like an eye for detail, the ability to empathize with the end-user, good communication, and documentation skills. If you have these skills then yes it will be easier to learn software testing.
Software testing can be majorly divided into two parts – manual and automated software testing. In the case of manual testing, no coding is required.
You can learn about the different types of software testing from ArtOfTesting. Our tutorials are completely free and designed for beginners.
This concludes our tutorial series on software testing tutorial for beginners. We hope our tutorials will help you to understand all the theoretical and practical aspects of software testing.
Kuldeep is the founder and lead author of ArtOfTesting. He is skilled in test automation, performance testing, big data, and CI-CD. He brings his decade of experience to his current role where he is dedicated to educating the QA professionals. You can connect with him on LinkedIn.