Course

Software Testing and Automation

University of Minnesota

Embark on a comprehensive journey to master software testing and automation with the Software Testing and Automation Specialization. Through in-depth study and practical application, you'll gain proficiency in writing automated functional tests, defending program correctness using formal methods, and conducting web & mobile testing. This series of courses is designed for beginning to intermediate software developers seeking to enhance the quality and effectiveness of their projects through robust testing techniques and tools.

  • Distinguish between verification and validation, and understand their key differences
  • Write automated functional tests for both front-end and back-end code
  • Measure the fault-finding effectiveness of a functional test suite using mutation testing
  • Defend program correctness through formal methods, including proof obligations and model checking

  1. Introduction to Software Testing: Gain understanding of testing theory, write diverse tests, and create test plans
  2. Black-box and White-box Testing: Evaluate testability of requirements and develop automated tests
  3. Introduction to Automated Analysis: Learn state-of-the-art techniques for automated analysis
  4. Web and Mobile Testing with Selenium: Master testing techniques for web and mobile platforms using Selenium

Certificate Available ✔

Get Started / More Info
Software Testing and Automation
Course Modules

This course includes four modules covering software testing theory, automated analysis, and web & mobile testing with Selenium. Gain proficiency in writing diverse tests, evaluating testability of requirements, and mastering state-of-the-art testing techniques and tools.

Introduction to Software Testing

Gain an understanding of testing theory, practice writing diverse tests, develop test plans, and create defect reports to guide the testing stage of the software development lifecycle.

Black-box and White-box Testing

Evaluate testability of requirements, define testable units within a program specification, select and apply black-box test input selection methods, and develop automated tests and test oracles for automated software verification.

Introduction to Automated Analysis

Learn state-of-the-art techniques for automated analysis, including automated verification, random testing, symbolic analysis, static analysis, and model checking. Create a test plan that utilizes both manually-written tests and automated tests for maximum rigor and efficiency.

Web and Mobile Testing with Selenium

Master testing techniques for web and mobile platforms, gain a solid foundation in web and mobile testing principles, and learn to use Selenium as a framework for automating test execution.

More Software Development Courses

Create a Web Link Preview with VueJS Components

Coursera Project Network

Create a Web Link Preview with VueJS Components allows you to master VueJS components and create a reusable component, enhancing your object-oriented development...

Introduction to Test and Behavior Driven Development

IBM

This course provides a detailed overview of test driven development (TDD) and behavior driven development (BDD), equipping learners with the skills to create robust...

Software Design as an Element of the Software Development Lifecycle

University of Colorado System

Software Design as an Element of the Software Development Lifecycle explores the significance of design in various lifecycles and its role in software development....

Coding with Generative AI

Fractal Analytics

Coding with Generative AI is a 3-hour microlearning course exploring the fundamentals of Generative AI and its application in coding. Gain insights into generative...