CakePHP Unit Testing

CakePHP Unit Testing

Accelerate Your Development

About the Book

I wrote this book for the following audiences:

  • People who have programming skills and want to improve the quality of their code.
  • People who have heard about unit testing but are still not clear what it is or how it works.
  • People who love CakePHP and want to take advantage of what it offers.
  • People who have spent a lot of time searching for bugs after a 3rd party upgrade.

The examples in this book use CakePHP, but the first half of the book is not framework or language specific. I hope unit testing and the ideas presented in this book will help you as much as they’ve helped me.

About the Author


rrd started to code for the web in plain HTML in 1998. As the web evolved, he turned to PHP, then to Javascript. As mobile technologies arrived, he started to play with Java for android development.

He’s a big fan of CakePHP and jQuery frameworks, open source, and pizza. All of them are there in his web development.

About the Contributors

András Halter
András Halter


Eric Bernasek
Eric Bernasek


Table of Contents

  • Introduction
  • About the Book
    • Why I Wrote This Book
    • My Development Environment
    • Who This Book Is For
  • About the Author
  • Thanks
  • My E-books on CakePHP
    • CakePHP Unit Testing
    • CakePHP User Authentication
  • My CakePHP Plugins
  • What Is Unit Testing
    • Arguments
    • Why Should We Write Tests?
  • What Is CakePHP
    • Main Features
  • Clean Code
    • How Tests Help Write Clean Code
  • Test Driven Development
    • TDD Development Cycle
  • Development Cycle
    • Understanding the Challenge
    • Planning
    • Installation
    • Coding, Testing, Documenting and User Feedback
    • Topics Not Covered
  • Preparing for Testing
    • Installing
    • Preparing
  • Fixtures
    • Creating Fixtures
    • Loading Fixtures Into Your Tests
  • Model Tests
    • Test Function Names
    • Assertions
    • Fail First
    • Passing Test
  • Test Callbacks
  • Controller Tests I.
    • Return Types
    • POST and GET Requests
  • Mocks
    • Expects Method
    • A More Complex Mock Example
    • Mocking Core PHP Functions
  • Controller Tests II.
    • Redirects
    • Debug
  • Test Suites
  • Testing from Command Line
  • Goodies
    • Code Coverage
    • Fixtures Data
    • Testing Private Methods
  • References by Chapters
    • What Is Unit Testing
    • Clean Code
    • Test Driven Development
    • Development Cycle
    • Others

The Leanpub 60-day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms

Do Well. Do Good.

Authors have earned$12,164,369writing, publishing and selling on Leanpub, earning 80% royalties while saving up to 25 million pounds of CO2 and up to 46,000 trees.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub