Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases now! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Test-Driven Development with PHP 8

You're reading from   Test-Driven Development with PHP 8 Build extensible, reliable, and maintainable enterprise-level applications using TDD and BDD with PHP

Arrow left icon
Product type Paperback
Published in Jan 2023
Publisher Packt
ISBN-13 9781803230757
Length 336 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Rainier Sarabia Rainier Sarabia
Author Profile Icon Rainier Sarabia
Rainier Sarabia
Arrow right icon
View More author details
Toc

Table of Contents (17) Chapters Close

Preface 1. Part 1 – Technical Background and Setup
2. Chapter 1: What Is Test-Driven Development and Why Use It in PHP? FREE CHAPTER 3. Chapter 2: Understanding and Organizing the Business Requirements of Our Project 4. Chapter 3: Setting Up Our Development Environment Using Docker Containers 5. Chapter 4: Using Object-Oriented Programming in PHP 6. Part 2 – Implementing Test-Driven Development in a PHP Project
7. Chapter 5: Unit Testing 8. Chapter 6: Applying Behavior-Driven Development 9. Chapter 7: Building Solution Code with BDD and TDD 10. Chapter 8: Using TDD with SOLID Principles 11. Part 3 – Deployment Automation and Monitoring
12. Chapter 9: Continuous Integration 13. Chapter 10: Continuous Delivery 14. Chapter 11: Monitoring 15. Index 16. Other Books You May Enjoy

Summary

In this chapter, we’ve gone through the SOLID principles one by one. We used our tests to kickstart the development of our solution code so that we can use them as examples for implementing the SOLID principles in real life.

We have covered the SRP, which helped us make a PHP class’s responsibility or capability more focused. The OCP helped us avoid the need for touching or modifying a class in some instances when we want to change its behavior. The LSP helped us be stricter about the behavior of an interface, making it easier for us to switch concrete objects implementing that interface without breaking the parent class’s behavior. The ISP helped us make the responsibility of an interface more focused – classes that implement this interface will no longer have empty methods just because they were declared by the interface. The DIP helped us quickly test our ToyCarCreator class even without creating a concrete implementation of its dependencies...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime