phpUnderControl

Sebastian Bergmann » 19 November 2007 » in PHPUnit » 4 Comments

Manuel Pichler recently released phpUnderControl. As of today phpUnderControl is hosted on phpunit.de.

phpUnderControl aims to make the first steps with CruiseControl and PHP as easy as possible. It integrates three of the best PHP development tools into CruiseControl, combined with an easy setup routine and a small example project. With the provided XSL stylesheets, the generated output of PHPUnit, PHP_CodeSniffer and phpDocumentor can be visualized in CruiseControl.
Defined tags for this entry: , , , , ,

Testing with PHPUnit and Selenium

Sebastian Bergmann » 05 November 2007 » in Presentations » 1 Comment

Defined tags for this entry: , , , , ,

Profiling and Optimizing PHPUnit

Sebastian Bergmann » 21 October 2007 » in PHPUnit » 5 Comments

Now that collecting code coverage information is not slow anymore (as of Xdebug 2.0.1), PHPUnit's report generation code (PHPUnit_Util_Report_*) has become a bottleneck.

Profiling PHPUnit's Report Generation

The image above shows the profile of PHPUnit's report generation code at revision 1473.

Profiling PHPUnit's Report Generation

The image above shows the profile of PHPUnit's report generation code at revision 1475, after I made the report a code coverage report only. The test result aspect of the previous report was not very usefull, made the report generation unneccassary complex and expensive, and should be handled by CruiseControl, for instance, anyways.

Profiling PHPUnit's Report Generation

The image above shows the profile of PHPUnit's report generation code at revision 1486, after I eliminated the PHPUnit_Util_Array::sortRecursively() method calls.

Profiling PHPUnit's Report Generation

The image above shows the profile of PHPUnit's report generation code at revision 1488, after I eliminated the PHPUnit_Util_Report_Node_File::tokenToColor() method calls.

Profiling PHPUnit's Report Generation

The image above shows the profile of PHPUnit's report generation code at revision 1533 with disabled syntax highlighting.

Profiling PHPUnit's Report Generation

The image above shows the profile of PHPUnit's report generation code at revision 1535 with the new statistics details.

Profiling PHPUnit's Report Generation

The image above shows the profile of PHPUnit's report generation code at revision 1586 after applying a set of performance patches by Hubert Roksor.

Profiling PHPUnit's Report Generation

The image above shows the profile of PHPUnit's report generation code at revision 1603 after applying another set of performance patches by Hubert Roksor.

Speaking at the International PHP Conference

Sebastian Bergmann » 28 July 2007 » in ezcWorkflow, PHPUnit » 0 Comments



I will present a full-day workshop on PHPUnit and the tools it can be integrated with (such as Selenium RC and CruiseControl) as well as regular conference sessions on ezcWorkflow
A Workflow Engine for PHP 5
Workflow Management (WfM) is becoming more and more important. For the development and maintainance of software that supports workflows, a new layer on top of the base programming language is needed. Graph-Oriented Programming (GOP) is such a layer. This session presents the eZ Components' workflow engine, its possible applications and the underlying principles and techniques.
and quality assurance in PHP-based projects
Qualitätssicherung in PHP-Projekten
Kann man Softwarequalität messen und wie kommt man zu sinnvollen Qualitätskriterien? Wie findet man Fehler in Programmen und wie geht man beim systematischen Testen vor? Diese und andere Fragen diskutiert der Entwickler von PHPUnit in diesem Vortrag - sowohl im Allgemeinen als auch im speziellen Fall von PHP-basierten Projekten.
at this year's International PHP Conference that will be held in Mörfelden-Walldorf in November.
Defined tags for this entry: , , , , ,

Xinc is not CruiseControl

Sebastian Bergmann » 09 April 2007 » in PHPUnit » 3 Comments

Initiated by Think Design Inc., Xinc is not Cruisecontrol is a toolkit for Continuous Integration that is based upon PHPUnit and Phing. It currently supports Subversion for Software Configuration Management.

The project is currently in alpha stage and there is no real information available on the website yet. Still, I think this a project to look out for.