Test-Driven Development with C++

Modern, standard C++ is all that is needed to create a small and practical testing framework that will improve the design of any project. This allows you to think about how the code will be used, which is the first step in designing intuitive interfaces. TDD is a modern balanced software development approach that helps to create maintainable applications, provide modularity in design, and write minimal code that drastically reduces defects. With the help of this book, you'll be able to continue adding value when designs need to change by ensuring that the changes don't break existing tests.

In this book, you will use test-driven development (TDD) to gain practical skills by writing a simple testing framework and then using it to drive the design of a logging library. The book will help you enhance your software development skills with test cases. You'll understand how to design and implement test cases. The chapters will also show you how to utilize the TDD approach to be more productive in software development than attempting to code in large unstructured steps.

By the end of this book, you'll have gained knowledge of TDD and testing and also built a working logging library with unique features not found in other libraries.

Type
ebook
Category
publication date
2022-11-18
what you will learn

Understand how to develop software using TDD
Keep the code for the system as error-free as possible
Refactor and redesign code confidently
Communicate the requirements and behaviors of the code with your team
Understand the differences between unit tests and integration tests
Use TDD to create a minimal viable testing framework

no of pages
430
duration
860
key features
Learn how a simple shift in focus will let you use tests to meet customer needs * Develop a testing library and a logging library that you can use in your own projects * Drive better code designs with effective tests that help new team members contribute faster
approach
First, introducing the reader to the challenges of testing in C++ and how to solve those challenges with a minimal solution. Then using that initial solution to drive the development of a logging library. As the logging library advances, it will need more features from the testing library that were not in the initial minimal version. The reader will learn about TDD in a practical, hands-on manner.
audience
This book is for C++ developers already familiar with and using C++ for daily tasks who want to improve their skillset. You don’t need to be an expert but you should already have some knowledge of modern C++ and how to use templates to get the most out of this book.
meta description
Learn how to write software that excites your customers and avoids breaking your work when making changes
short description
This book focuses on teaching you how to use tests to improve the design of future projects. Using TDD will help you design code that is easy to understand, runs without crashing, does what it’s supposed to do with fewer bugs, and can be changed as needed. Implementing this method using this book will make your code seem more intuitive because you’ll learn how to write it first from a user’s viewpoint.
subtitle
A simple guide to writing bug-free Agile code
keywords
Software Development, Software Testing, C++ Programming
Product ISBN
9781803242002