RiseUpp Logo
Educator Logo

Introduction to Software Testing

Learn software testing fundamentals, create test cases, and master JUnit for automated testing and defect reporting.

Learn software testing fundamentals, create test cases, and master JUnit for automated testing and defect reporting.

This comprehensive course provides a solid foundation in software testing principles and practices. You'll gain a deep understanding of testing fundamentals including verification vs. validation, test adequacy measurement using statement and branch coverage, and fault-finding effectiveness assessment through mutation testing. The course teaches practical skills for crafting effective unit and integration tests, implementing test automation with JUnit, and employing test doubles such as stubs and mocks. You'll learn to develop test plans, create detailed defect reports, and understand different testing strategies within the software development lifecycle. By the end of the course, you'll be capable of designing and executing tests for various quality objectives including code coverage and defect detection. This knowledge is essential for software engineers, testers, and developers looking to improve software quality through systematic testing approaches.

4.4

(765 ratings)

1,12,449 already enrolled

English

پښتو, বাংলা, اردو, 3 more

Powered by

Provider Logo
Introduction to Software Testing

This course includes

30 Hours

Of Self-paced video lessons

Intermediate Level

Completion Certificate

awarded on course completion

Free course

What you'll learn

  • Understand the fundamental theory and terminology of software testing

  • Master writing tests for various quality intents including code coverage and defect finding

  • Develop comprehensive test plans to guide the testing process

  • Create effective defect reports for transparency and understanding

  • Implement unit and integration tests using JUnit automation

  • Utilize test doubles including stubs and mocks for state and behavioral verification

Skills you'll gain

Software Testing
JUnit
Test Automation
Software Engineering
Defect Reporting
Unit Testing
Code Coverage
Mutation Testing
Test Planning
Quality Assurance

This course includes:

4.2 Hours PreRecorded video

26 assignments

Access on Mobile, Tablet, Desktop

FullTime access

Shareable certificate

Closed caption

Get a Completion Certificate

Share your certificate with prospective employers and your professional network on LinkedIn.

Provided by

Certificate

Top companies offer this course to their employees

Top companies provide this course to enhance their employees' skills, ensuring they excel in handling complex projects and drive organizational success.

icon-0icon-1icon-2icon-3icon-4

There are 4 modules in this course

This course provides a comprehensive introduction to software testing fundamentals and practices. Students will learn essential testing terminology, principles, and methodologies, including verification and validation in the software development lifecycle. The curriculum covers both theoretical aspects and practical skills, teaching learners how to create and automate tests using JUnit, measure test adequacy with coverage analysis, and employ mutation testing to assess fault-finding capabilities. The course also addresses important professional aspects of testing, such as test planning, status reporting, and defect management. Through hands-on programming assignments, students gain practical experience in writing effective unit tests, using test doubles like stubs and mocks, and analyzing code coverage with tools like JaCoCo. By the end of the course, participants will be equipped with both theoretical knowledge and practical skills necessary for implementing effective testing strategies in software development projects.

Introduction

Module 1 · 7 Hours to complete

Testing Foundations

Module 2 · 4 Hours to complete

Testing in the Software Development Lifecycle

Module 3 · 7 Hours to complete

Writing Good Unit Tests

Module 4 · 10 Hours to complete

Fee Structure

Instructors

Kevin Wendt
Kevin Wendt

4.5 rating

261 Reviews

2,24,625 Students

6 Courses

Director of Graduate Studies, Software Engineering

Kevin Wendt is a Teaching Specialist at the University of Minnesota - Twin Cities, where he serves as the Director of the Master of Science in Software Engineering (MSSE) program and oversees graduate teaching assistants in the Department of Computer Science and Engineering (CS&E). His teaching portfolio includes a wide range of courses, from graduate-level software engineering to introductory programming for non-majors.Before his tenure at the University of Minnesota, Wendt spent six years teaching at Dunwoody College of Technology, a century-old technical institution, and worked for five years as an applications programmer at Wells Fargo & Co. His extensive experience in both academia and industry informs his approach to software engineering education, emphasizing practical applications and real-world problem-solving.On Coursera, Dr. Wendt teaches several courses that focus on software testing and quality assurance, including Black-box and White-box Testing, Engineering Practices for Building Quality Software, Introduction to Automated Analysis, Introduction to Software Testing, Software Development Processes and Methodologies, and Web and Mobile Testing with Selenium. His courses are designed to equip students with essential skills for developing high-quality software in various environments.

Sanjai Rayadurgam
Sanjai Rayadurgam

4.5 rating

269 Reviews

1,21,067 Students

2 Courses

Director

Sanjai Rayadurgam is the director of the University of Minnesota Software Engineering Center and a Research Project Specialist in the Department of Computer Science and Engineering. He has been in this role since 2012. Prior to his current position, Rayadurgam spent a decade in the medical devices industry, where he developed advanced tools, performed systems engineering, and worked on the verification and validation of implantable cardiac devices. His areas of expertise include software testing, formal analysis, and model-based development, with a particular focus on safety-critical systems. Rayadurgam advises graduate students, conducts research, and teaches courses related to software testing and verification. On Coursera, he offers courses such as "Introduction to Software Testing" and "Web and Mobile Testing with Selenium," providing learners with foundational knowledge in software testing methodologies and tools. His research contributions are well-recognized, with numerous publications in leading conferences and journals, reflecting his commitment to advancing software engineering practices.

Introduction to Software Testing

This course includes

30 Hours

Of Self-paced video lessons

Intermediate Level

Completion Certificate

awarded on course completion

Free course

Testimonials

Testimonials and success stories are a testament to the quality of this program and its impact on your career and learning journey. Be the first to help others make an informed decision by sharing your review of the course.

4.4 course rating

765 ratings

Frequently asked questions

Below are some of the most commonly asked questions about this course. We aim to provide clear and concise answers to help you better understand the course content, structure, and any other relevant information. If you have any additional questions or if your question is not listed here, please don't hesitate to reach out to our support team for further assistance.