The Test-Driven Development in C++ training course presents a number of modern practices for developing code based on an adaptive development lifecycle. Agility and predictability are two qualities often missing from software development. A test-driven approach, in which design is grown and code delivered incrementally according to functionality or risk, forms the basis of the construction phase of an iterative and incremental development. The use of unit testing provides confidence in existing code and supports the ability to refactor code as development unfolds.
Evidence of care · Testing viewpoint · Pragmatic testing · Automation · Bug pathology · Qualitative and constructive · Testing frameworks
Test quality · Good unit tests (GUTs) · Not-so-good unit tests · Fine-grained tests · Behavioural tests · Functional versus operational testing · Black-box tests
Testing sensibility: passive, reactive, active · Plain Ol' Unit Testing (POUT) · Defect-Driven Testing (DDT) · Test-Driven Development · Key TDD practices · The test-first cycle · Definition of done
Cohesive and focused tests · Propositional test names · Example-based tests · Choosing example data · Quality of failure · What to include and exclude · Short test cases · Single level of abstraction · Anatomy of a test case (Given–When–Then)
Feedback from testing · Reasons testing can be hard · Technical debt · Code smells · Refactoring · Dimensions of change · White-box testing issues · Coverage
Unit testability and coupling · Unmanaged dependencies · External dependencies · Unit versus integration tests · Characterising testability · Singletons and statics · Test doubles · Doubling techniques in C++
See why people choose JBI
23/10/2017: Debates on the present state of C++ in the programming world divide the participants into two camps: some dislike C++ and predict it's imminent...
11/10/2017: Python has taken the world of software development by storm. Here are the reasons why: Python is simple enough to be used to teach young children...
05/10/2017: Back in March 2014, the Angular team dropped a bomb by announcing Angular 2 and everyone started yelling. Instead of an evolutionary step forward,...
19/10/2017: Nowadays, there is a significant business advantage in being able analyse, process and visualize "big data". While there is no agreed definition...
19/10/2017: A team of existing C++ Developers needed to bring its skills right up to date in order to ensure that they were making the most of new features...
10/12/2018: Natural Language Processing is right at the cutting-edge of Artificial Intelligence, and the handling of data is critical to its success. Computers,...
Bring a JBI course to your office
and train a whole team onsite
0800 028 6400 or request quote
Get in touch
0800 028 6400
Excellent feedback, consistently !
"great tips help reduce build times"
"we got access to exclusive content"
"Short course meant less time off"
"what an inspiring trainer !"
"colleagues at 2 sites joined via web"
"I passed my exam the next day"
Subscribe to our Newsletter – Receive the latest info on Tech courses & insights Subscribe