Book Image

Expert PHP 5 Tools

By : Dirk Merkel
Book Image

Expert PHP 5 Tools

By: Dirk Merkel

Overview of this book

Even if you find writing PHP code easy, writing code that is efficient and easy to maintain and reuse is not so straightforward. Self-taught PHP developers and programmers transitioning from other languages often lack the knowledge to work with PHP on an enterprise level. They need to take their PHP development skills to that level by learning the skills and tools necessary to write maintainable and efficient code.This book will enable you to take your PHP development skills to an enterprise level by teaching you the skills and tools necessary to write maintainable and efficient code. You will learn how to perform activities such as unit testing, enforcing coding standards, automating deployment, and interactive debugging using tools created for PHP developers – all the information in one place. Your code will be more maintainable, efficient, and self-documented.From the design phase to actually deploying the application, you will learn concepts and apply them using the best-of-breed tools available in PHP.Experienced developers looking for expertise in PHP development will learn how to follow best practices within the world of PHP. The book contains many well-documented code samples and recipes that can be used as a starting point for producing quality code.Specifically, you will learn to design an application with UML, code it in Eclipse with PDT, document it with phpDocumentor, debug it interactively with Xdebug, test it by writing PHPUnit tests, manage source code in Subversion, speed up development and increase stability by using Zend Framework, pull everything together using continuous integration, and deploy the application automatically with Phing – all in one book. The author's experience in PHP development enables him to share insights on using enterprise tools, in a clear and friendly way.
Table of Contents (15 chapters)
Expert PHP 5 Tools
Credits
About the Author
About the Reviewers
Preface

Chapter 7. Testing

The software we write is constantly being tested—at least we hope it is. That is because every time someone uses a piece of code, a class, or a website you created, he or she is implicitly testing it as well. We will take a look at the different types of testing that are performed during a typical software development cycle.

One thing that types of testing have in common is that their goal is to ferret out problems with the software. The earlier we are able to catch a bug, the cheaper it is to fix it. If the developer can find, diagnose, and fix a bug during the development stage, it will happen much faster than if it happens during user acceptance testing when the client gets his hands on the final product. As we will see later in the chapter, once unit tests have been set up, it is relatively cheap to run them; whereas, it is fairly expensive if a problem gets uncovered during regression or integration testing. One reason for that is because the former test is automated...