A PHP developer’s practical guide to planning, writing, and deploying maintainable and extensible software solutions with automated tests in a well-structured way
- Learn to organize and translate business requirements into maintainable software
- Minimize regressions and bugs while releasing new features or bug fixes
- Build maintainable applications using SOLID principles
PHP web developers end up building complex enterprise projects without prior experience in test-driven and behavior-driven development which results in software that’s complex and difficult to maintain. This step-by-step guide helps you manage the complexities of large-scale web applications. It takes you through the processes of working on a project, starting from understanding business requirements and translating them into actual maintainable software, to automated deployments.
You’ll learn how to break down business requirements into workable and actionable lists using Jira. Using those organized lists of business requirements, you’ll understand how to implement behavior-driven development (BDD) and test-driven development (TDD) to start writing maintainable PHP code. You’ll explore how to use the automated tests to help you stop introducing regressions to an application each time you release code by using continuous integration.
By the end of this book, you’ll have learned how to start a PHP project, break down the requirements, build test scenarios and automated tests, and write more testable and maintainable PHP code. By learning these processes, you’ll be able to develop more maintainable, and reliable enterprise PHP applications.
What you will learn
- Understand how to start a software project
- Discover how to use Jira as a tool to organize your tasks
- Explore when and how to write unit, integration, and functional tests using PHPUnit
- Write behavior-driven tests using Behat
- Apply SOLID principles to help you write more testable code
- Get the most out of your automated tests by using continuous integration
- Use continuous delivery to help you prepare your application for deployment