News Feed
Sections




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

Gonzalo Ayuso:
The reason why singleton is a "problem" with PHPUnit
September 24, 2012 @ 11:57:02

Gonzalo Ayuso has a new post that responds to the idea that "singletons are a problem when testing" your applications with something like PHPUnit.

Maybe this pattern is not as useful as it is in J2EE world. With PHP everything dies within each request, so we cannot persist our instances between requests (without any persistent mechanism such as databases, memcached or external servers). But at least in PHP we can share the same instance, with this pattern, in our script.

He illustrates a bad side effect of this sharing of resources with a simple unit test that increments a counter in a class. He notes that, because the script shares the object, you can't reliably know the state of it as you don't know what's happened before your use. He recommends two things to help the situation - either not use them at all or destroy the instance each time after using it (counterproductive to using a Singleton, obviously).

0 comments voice your opinion now!
singleton designpattern problem resource sharing


blog comments powered by Disqus

Similar Posts

Andi Gutmans' Blog: Zend Developer Zone 3.0(?)

DevShed: Handling Cookies and File Data with the Factory Pattern in PHP 5

ThinkPHP Blog: Accessing NTLM secured resources with PHP

Mike Bernat's Blog: Design Patterns (an Introduction and the Singleton)

Charles Sprayberry's Blog: DI and global state


Community Events





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


podcast list threedevsandamaybe release framework series introduction testing install code interview community refactor unittest laravel symfony2 developer opinion language api

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