Synfony Project: New testing framework
29254
On the Synfony project's blog, they've posted about a new testing framework that they've implemented for their framework based around something they call "lime".    If you keep an eye on the timeline, you probably saw that the symfony unit tests have been completely reworked lately. This is because we switched from simpletest, which was fine but had side effects when functional tests were executed all at once, to our own testing framework, lime.   Lime is more lighweight than PHPUnit or simpletest and has several advantages. First, it launches test files in a sandbox to avoid strange effects between each test file run (one of the reasons we were unable to fix the old symfony core tests). It also introduces a new sfBrowser, sfTestBrowser and more importantly sfDomCssSelectorBrowser that allow you to write functionnal tests with ease. It is not backward compatible but is a lot more powerful than the old system. Oh, and it holds in a single file, lime.php, without any dependence.    They show some examples of its usage (and a note on which tests will need to be updated) as well as the output that would come of it. They've also included some sample tests (in the "test/" folder of the release) if you'd like to check it out more throughly.
309307
Newly updated. This article provides insight into the Metasploit Framework, a very useful tool for the penetration tester. Part two of three.
57553
On the PHP in Action Blog, there's a new post today that shares some tips for testing your web applications with some simple tests.   I just started listing the techniques I've learned when writing tests to exercise the web interface of a PHP application. This is from my experience and my personal preferences; it's not the final word or necessarily right for everyone.  He suggests:  Use SimpleTest's Web tester if you can Test the web output using regular expressions Use element IDs or names to test links, forms and fields Log HTTP requests in the application
96527
Marathon - Testing Framework version 0.90 is released. This is a minor feature enhancement and bug-fix release. The details of changes can be found in ChangeLog. Marathon is a testing framework for GUI applications developed using Java/Swing. Marathon composes of recorder, runner and editor. The testscripts are composed of python code. Marathon focuses on end-user testing. One need not know Java or Swing to record test scripts using Marathon. Marthon is kept intentionally simple. The aim to produce test scripts that are readable by everyone on the project. This includes the developers, testers and the customers. Marathon is flexible and provides facilities to extend the functionality available through python scripts or through writing ones own component resolvers.    The latest release can be found here:  https://sourceforge.net/project/showfiles.php?group_id=46616&package_id=54685
641738
In a new post to his blog, Robert Swarthout about a PHP frontend he's been developing for working with Subversion repositories:   The frontend needed to be designed in such a way that each developer could access their working copies and make the full range of actions against them. I decided to also use an AJAX setup so that pages would be quickly loaded and updated by a single toggle of a folder.   A few issues popped up, including tracking edits correctly through the interface. His solution revolved around an Apache MPM that could serve different pages to different users and groups. With this solution in place, the functionality could be built up, a list of which he provides including:  create working copy from repository (svn checkout) svn blame svn delete search files (via a grep/find combination, omitting .svn folders) svn rename
90388
A distributed multi-protocol load testing tool.
662669
In this new post to his blog today, Tim shares some of the tools that he uses to develop his PHP applications (including supporting the CodeIgniter project).   IÃ¢ÂÂve been asked on several occasions to spill the beans on my development environment. Sadly, itÃ¢ÂÂs probably not the easiest setup - but it works for my stubborn mind.   Applications included in his list are things like PHP Eclipse, CuteFTP, XAMPP and Subversion. He also mentions a Firefox extension, Devboi, that offers quick access to several different reference manuals on the web.
233825
The Release Candidate for PHPUnit 3.2 was announced on Sebastian's Blog.  Highlights of this new release include software metrics, project mess detection, copy-and-paste detection, improvements to SeleniumTestCase for better integration with Selenium RC, data providers for test cases, and grouping of tests.  View the ChangeLog for more detailed information on his latest release.
277304
The results from the latest poll conducted by the International PHP Magazine have been released. This time, they asked developers what they thought was the best way to do QA for their PHP applications.   Among the options were things like "Do API documentation", "Use code analyzers that check CS violations, XSS or SQL injection attacks" and the number one choice - "Do unit tests using PHPUnit or phpt". Three other options followed behind (using debugging tools, code analyzers and having a commit mailing list) with the API documentation falling down in last place.   They already started up this week's poll too. This time, they ask developers to vote on which of the options make for good PHP code. There's four options - structured, consistent, portable and secure. Get your vote in today!
412006
From PHP Planet today, there's a note on Marcus White's weblog stating that: you cannot prove anything by testing. No matter how hard you try, there could always be something wrong, or some combination of conditions or some external event that you havenÃ¢ÂÂt thought of. You never know absolutely for sure that your project is working correctly and you never will.
677740
The Zend Developer Zone has posted the fifth and final installment of the series Stefan Priebsch has written up about debugging your application via the XDebug software.   Today, we will have a look at another great feature of xdebug - creating code coverage statistics. Code coverage statistics show how many times each line of the code has been executed. Conversely, they also show which lines of code have not been executed, which is in fact much more interesting.   He talks a bit about what code coverage is and how it can help you fine tune your application. He walks you through the installation of the two packages that will help out with running the reports - phing and PHPUnit. Using these, he shows how to create a simple unit test and a build file for phing that combine and, via the XDebug calls to xdebug_start_code_coverage, xdebug_stop_code_coverage and xdebug_get_code_coverage, are used to generate the output graphs and stats in a nice, easy to read interface.
768860
According to this new post on the Symfony blog the latest version of the framework has hit the shelves - Symfony 1.1.10.   Ladies and gentlemen, after a tremendous sprint, here is the release 1.0.10.   Fixes include modifications to ProjectExport, a problem with sfRouting and magic quotes, a correction to the sfConfigCache usage, the default log file permissions and a revert on some changes to the default time and date formats.   You can grab this latest release here and there's some documentation to get you started.
751529
Michael Kimsal has come up with the start of a series to introduce PHP developers to the world of Grails (the Java framework).   The comparisons I plan to make will be mostly to PHP, cause that's what I'm most familiar with, though there may be some other comparisons from time to time.  This is a work in progress, but I'd be very interested in feedback from anyone out there interested in this aea - Grails, Groovy, PHP, why another language/platform/framework, etc.   The first two installments have been posted - part one and part two - with an introduction to what Grails is and a brief dip into some "Hello world" sort of code to give you an idea of the structure.
377236
In a new post to his blog, Sebastian Bergmann mentions a new effort he's undertaken - the porting of the Hamcrest library of matcher objects to PHP.   I have begun to port Hamcrest, which provides a library of matcher objects (also known as constraints or predicates) allowing "match" rules to be defined declaratively, to be used in other frameworks. Typical scenarios include testing frameworks, mocking libraries and UI validation rules, to PHP.   The hamcrest-php project compliments other current hamcrest-related projects and his ultimate goal is to make it available to the PHPUnit testing community (as well as with the PHPMock effort).
608700
Is GUI testing as difficult as it seems? Maybe not, with the right testing libraries. George Nistorica shows what X11::GUITest can and can't do to make your Unix and Unix-like applications more robust.
295818
In a new note today, Matthew O'Phinney shares some of his experience as being asked to head up the MVC team for the Zend Framework, including some of the changes that have been made.   The experience has been incredibly rewarding, however, and I've had the chance to pick the brains of and work with some top-notch developers in the process. In the next week or so, we'll be releasing version 0.6.0 of the framework, and it will include much of my work in the MVC components as part of the core distribution.   Some of the changes he lists include:  changes that promote greater flexibility and testing controller classes are now unit tested the introduction of the request and response objects a router is no longer needed the ability to push parameters into the front controller  He also gets into a bit of detail on the Response object - what it is, how it works, and how you can set up your own custom versions of it. Check out the full post for more information.
287911
AJAX Toolkit Framework upgrade to help consolidate frameworks and extend supported browsers.