Learn TDD and BDD with Python to build and test agile software faster and more reliably.
Skills you will gain
- Describe all the common software testing categories and their general usages
- Discuss and apply agile development using TDD/BDD, automation of unit, functional, and web-based testing
- Explain code coverage, continuous integration and continuous testing/deployment processes
- Identify strategies to apply unit testing very early in the development process
Course Description
This course provides an overview of agile software development with an emphasis on popular software development practices like test-driven development (TDD) and behavior-driven development (BDD). It covers best practices, techniques and tools used in TDD and BDD, providing an overview of testing methodologies, including black box and white box testing in the evolving Agile/Scrum model. You will learn how to use Git for version controlling and GitHub for source code management. The course introduces xUnit framework based test automation using Python pyUnit and nose as well as Selenium WebDriver based functional test automation. Test coverage concepts, strategies and tools such as coverage are also addressed. By the end of the course, you will gain hands-on exposure to cutting-edge tools heavily used in the software industry. You are encouraged to bring laptops to class.
Prerequisites / Skills Needed
Coding knowledge of any general purpose programming language such as Python, Java, C++, Ruby, or C# is required. Students without prior programming experience in Python are encouraged to go through a quick learning guide such as before the first lab starts.
- Flexible Attend in person or via Zoom at scheduled times.
黑料不打烊
This class meets simultaneously in a classroom and remotely via Zoom. Students are expected to attend and participate in the course, either in-person or remotely, during the days and times that are specified on the course schedule. Students attending remotely are also strongly encouraged to have their cameras on to get the most out of the remote learning experience. Students attending the class in-person are expected to bring a laptop to each class meeting.
To see all meeting dates, click "Full Schedule" below.
You will be granted access in Canvas to your course site and course materials approximately 24 hours prior to the published start date of the course.
Recommended Text:
"Agile Testing: A Practical Guide for Testers and Agile Teams", 1st edition, Lisa Crispin & Janet Gregory, Addison-Wesley Professional, ISBN: 978-0321534460
"The Art of Unit Testing: with examples in C#", 2nd edition, Roy Osherove, Manning Publications, ISBN: 978-1617290893
