News Feed
Sections




News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Chris Hartjes:
Testing Listeners
September 30, 2013 @ 11:56:39

In the latest post to his site, Chris Hartjes offers some advice about unit testing with listeners to help teach PHP developers the right way to test.

I had an idea to put together some kind of "PHP Testing Koans" site as a way to help PHP developers get better at learning how to actually write tests. Most developers who are introduced to testing get blocked at the point of actually writing a test. [...] So I started to brainstorm ways to make it happen. With some help from Joel Clermont I stumbled upon using test listeners for this.

He uses the built-in test listeners for PHPUnit to write a system that checks to ensure a certain test exists in a "Koan1Listener" class. This class implements the PHPUnit_Framework_TestListener interface and has several methods to catch events and handle issues thrown during execution.

The approach is simple: for each test class that gets executed, add the names of all the methods to an internal list. When the entire test suite is finished, we then check to see if the test names that we were expecting are in our list of methods we found. I am sure there is a more efficient way to do it, so let me know in the comments of a different approach.
0 comments voice your opinion now!
unittest testing listener custom phpunit koans

Link: http://www.littlehart.net/atthekeyboard/2013/09/27/test-listeners/

blog comments powered by Disqus

Similar Posts

Blue Parabola Blog: Getting Started with Zend_Test

Sebastian Bergmann's Blog: phpUnderControl

DZone.com: PHPUnit_Selenium

DZone.com: Contributing to Paratest

Dutch Web Alliance: The definitive remote debug and unittest with PHPStorm guide: part 5


Community Events





Don't see your event here?
Let us know!


zendserver podcast introduction deployment release list language series community install package opinion tips interview symfony library api framework update laravel

All content copyright, 2014 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework