VOOZH about

URL: https://www.coursera.org/learn/agile-software-development-with-python-tdd-and-bdd

⇱ Agile Software Development with Python: TDD and BDD | Coursera


Agile Software Development with Python: TDD and BDD

Agile Software Development with Python: TDD and BDD

Included with

Gain insight into a topic and learn the fundamentals.
Beginner level

Recommended experience

7 hours to complete
Flexible schedule
Learn at your own pace

Gain insight into a topic and learn the fundamentals.
Beginner level

Recommended experience

7 hours to complete
Flexible schedule
Learn at your own pace

What you'll learn

  • Apply Agile principles and Scrum practices to manage software development projects effectively.

  • Implement Test-Driven Development (TDD) and Behavior-Driven Development (BDD) to write clean, reliable, and maintainable Python code.

  • Build a collaborative, iterative workflow that improves communication, reduces bugs, and enhances software quality.

Details to know

Shareable certificate

Add to your LinkedIn profile

Assessments

9 assignments¹

AI Graded see disclaimer
Taught in English

There are 6 modules in this course

In today’s fast-moving tech world, great developers do more than just write code — they build adaptable, high-quality software that meets real user needs. This hands-on course will guide you through the essential tools and mindsets that power modern software teams.

You’ll gain a deep understanding of Agile principles and the Scrum framework, learning how to iterate quickly and deliver value efficiently. Through practical Python exercises, you’ll master Test-Driven Development (TDD) and Behavior-Driven Development (BDD) — industry-proven practices that help you design cleaner, more reliable, and maintainable code. By the end of the course, you will be able to apply Agile and Scrum frameworks to manage real-world projects effectively, write and test Python code using Pytest and Behave, and collaborate seamlessly with developers, testers, and stakeholders through shared language and executable specifications. Whether you’re an aspiring developer or a working professional, this course empowers you to build better software, communicate more effectively, and advance your career in today’s Agile-driven industry.

Welcome to the course! This course provides a practical, hands-on introduction to Agile software development using Python, with a strong emphasis on modern testing practices such as Test-Driven Development (TDD) and Behavior-Driven Development (BDD). In this module, we will establish a strong conceptual foundation of software development evolution and the core tenets of the Agile mindset, preparing for the practical application of Scrum, TDD, and BDD.

What's included

3 videos1 reading2 assignments

3 videosTotal 13 minutes
  • 🎥 Introduction to the Course5 minutes
  • 🎥 Traditional SDLC: The Waterfall Model3 minutes
  • 🎥 The Agile Revolution: The Manifesto Values5 minutes
1 readingTotal 10 minutes
  • 📚 Resource: Agile Manifesto10 minutes
2 assignmentsTotal 60 minutes
  • ❓ Module 1 Quiz30 minutes
  • ✍️ Case Study: Developing an Online Recipe Sharing Platform30 minutes

In this module, we will gain a comprehensive understanding of the Scrum framework. We will be able to identify and apply its core components in an Agile development context.

What's included

2 videos2 assignments

2 videosTotal 11 minutes
  • 🎥 Understanding Scrum: Roles, Events, and Core Principles5 minutes
  • 🎥 Scrum Events and Artifacts: Bringing Agile Principles to Life5 minutes
2 assignmentsTotal 60 minutes
  • ❓Module 2 Quiz30 minutes
  • ✍️ Application Exercise: Framework for Agility30 minutes

In this module, we will set up our Python development environment, equipping with the essential tools and configurations necessary for the hands-on aspects of the course, especially regarding testing frameworks.

What's included

4 videos3 readings1 assignment

4 videosTotal 23 minutes
  • 🎥 Python Installation3 minutes
  • 🎥 Setting Up Python, Virtual Environments & Essential Tools for Agile Development10 minutes
  • 🎥 PyCharm Installation4 minutes
  • 🎥 Configuring PyCharm IDE and Preparing Python for Testing6 minutes
3 readingsTotal 30 minutes
  • 🪜 Steps to Install Latest Python (Windows & macOS)10 minutes
  • 🪜 Setting Up PyCharm Community Edition (Windows & macOS)10 minutes
  • 💻 Activity: Setup your Environment10 minutes
1 assignmentTotal 30 minutes
  • ❓Module 3 Quiz30 minutes

In this module, we will introduce the concept of unit testing and the Pytest framework, and deeply embed the Test-Driven Development (TDD) cycle (Red-Green-Refactor) as a fundamental practice for building robust and reliable software.

What's included

2 videos2 assignments

2 videosTotal 22 minutes
  • 🎥 Unit Testing with Pytest: TDD Fundamentals and Demo10 minutes
  • 🎥 Test-Driven Development (TDD): Red–Green–Refactor Cycle11 minutes
2 assignmentsTotal 60 minutes
  • ❓Module 4 Quiz30 minutes
  • ✍️ Application Exercise: Implementing a String Utility with TDD30 minutes

In this module, we will expand our testing knowledge beyond unit tests to integration testing. We will be introduced with Behavior-Driven Development (BDD) as a collaborative approach for defining and testing features from a business perspective using the Behave framework.

What's included

3 videos1 reading2 assignments

3 videosTotal 23 minutes
  • 🎥 Introduction to Integration Testing and Behavior-Driven Development (BDD)4 minutes
  • 🎥 Demo: Basic Integration Test with Pytest4 minutes
  • 🎥 Behavior-Driven Development (BDD) with Behave: Calculator History Demo14 minutes
1 readingTotal 10 minutes
  • 🪜 Steps to Install Behave & Make it Work with PyCharm (Windows & macOS)10 minutes
2 assignmentsTotal 60 minutes
  • ❓Module 5 Quiz30 minutes
  • ✍️ Application Exercise: Integration Testing & Introduction to BDD with Behave30 minutes

Well done! In this final module, we will comprehensively review all key concepts covered throughout the course, reinforce the value proposition of combining Agile methodologies with Python development and modern testing practices, and be provided with clear guidance for continued growth.

What's included

1 video

1 videoTotal 8 minutes
  • 🎥 Wrap-Up and Next Steps8 minutes

Instructor

University of California, Santa Cruz
2 Courses414 learners

Why people choose Coursera for their career

👁 Image

Felipe M.

Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
👁 Image

Jennifer J.

Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
👁 Image

Larry W.

Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
👁 Image

Chaitanya A.

"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

Frequently asked questions

To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.

When you purchase a Certificate you get access to all course materials, including graded assignments. Upon completing the course, your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.

Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.

Financial aid available,

¹ Some assignments in this course are AI-graded. For these assignments, your data will be used in accordance with Coursera's Privacy Notice.