Google, IBM & Meta Certificates – 40% Off
One plan covers every Professional Certificate on Coursera.
Unlock All Certificates
The course “Software Testing and Automation’ provides a comprehensive introduction to software testing, covering both foundational principles and modern testing practices used in industry. Learners begin by understanding the purpose of testing in the software development lifecycle, core testing terminology, and the difference between verification and validation.
The course then explores key test design techniques, including black box methods such as equivalence class partitioning, boundary value analysis, decision tables, and state transition testing, as well as white box techniques such as control flow analysis, path testing, data flow testing, and code coverage measurement. Learners also study integration testing approaches and model-based testing using behavioural models like finite state machines.
Beyond functional correctness, the course addresses non-functional testing, including performance, security, reliability, usability, accessibility, and compatibility testing. Learners examine a wide range of testing types used in modern delivery environments, including exploratory testing, resilience testing, and deployment strategies such as canary and A/B testing. The course also covers regression testing practices, test planning and management, defect lifecycle management, and release decision-making.
Finally, learners are introduced to test automation frameworks, automation design principles, testing across different layers (API, UI, performance, security), and continuous testing integrated with CI/CD pipelines. By the end of the course, learners will be able to design, manage, and automate effective testing strategies for real-world software systems.