Don't unit test GUIs
106223
A different viewpoint Part I It can be dangerous to make sweeping "Don't" statements. In Patterns of Enterprise Application Architecture, agile guru Martin Fowler coined his now-infamous first law of distributed object design: Don't distribute your objects. This is good advice to an extent but is also an overly simplistic viewpoint. The reader is left to track down the exceptions to the rule.â¦
250638
Windows, Linux and Java each fail some basic integrity rules.
654789
Padraic Brady has posted today about a subclass of the Zend_Loader package (in the Zend Framework) he had written up to handle Dependency Injections - it was submitted but ended up being replaced with a Zend_Di component instead.   I realised someone had proposed a novel new component called Zend_Di, and that small change was since accepted by Federico into his DI buster. This is a quick overview with very simple use cases - read the full proposal for even more gory details about your object innards using DI.   He talks about what DI (dependency injection) is and what it can be used for and includes a simple example set around a controller in the framework that uses the Zend_Di component to make a "mock Zend_Mail" that can be used in testing too. Examples of these sorts of tests (with PHPSpec) are included too.
557290
External developers and testers will see false values, keeping private data private.
352750
In his latest post, Sebastian Bergmann mentions the work he's done to integrate Selenium with PHPUnit to make a powerful testing platform.   Today I committed the initial work for integrating Selenium RC with PHPUnit. In this case it is PHPUnit that drives the execution of the web application UI tests, using PEAR's new Selenium package to communicate with the Selenium RC Server.   He includes an example of how it will be used, creating a test to check if a page's title is equal to "Example Web Page".
432898
(Source: Borland) Don't let distributed development, SOA and shifting methodologies sabotage software quality...or turn your QA teams into IT managers!  Virtualization can provide a better alternative to physical testing.  Learn how to get more out of virtualized testing by integrating it within testing processes.
146149
An introduction to using refactoring, unit testing and ZenTest on existing code.
560671
Here's a tip: if you steal a printer used to print driver's licenses, don't call the manufacturer asking for driver software.
417827
This organization uses standard hardware and software builds throughout the enterprise, so everything that works during testing should work fine for users -- shouldn't it?
396345
Sandro Zic recently gave a presentation on Java and PHP, and posted his slides here. I didn't attend his talk, so I don't have all the facts, but I would like to comment on one of his slides [...]. First, a minor point. Limited or no OOP has rarely stopped any software from being enterprise-ready. Most modern operating systems continue to be written in C, and the large Cobol programs running on mainframes that manage your bank accounts and insurance do not use OOP. [...] Let's address some of his other criticisms: Virtually no multi-threading, Lack of maintenance tools, and Immature frameworks.
395773
Always looking forward to the future of PHPUnit, Sebastian Bergmann has started gathering some ideas for future additions to the project:   I started to collect ideas for features that I would like to see in PHPUnit but currently lack the time to implement myself.   The two listed in this post are:  Mutation testing - an approach where the testing tool makes some change to the tested code, runs the tests, and if the tests pass displays a message saying what it changed Web Interface for Test Result Database - output viewer for the database logging PHPUnit is now capable of.  Looking to help out? Let him know!
120616
Businesses don&#39;t have to dump Windows to test drive free or low-price applications whose use may improve the bottom line. Sometimes the big software vendors act like their customers are locked into the proprietary products they sell.
176002
Taking the gloves off Software is unstable, full of bugs and bloated. Developers spend so much time adding new features that software testing is a last minute thing. Even the mantra of "designed secure" has failed to really improve the quality of software - just witness the number of day zero attacks against Microsoft.â¦
524269
Greg Bever has a (very) quick post about his experiences with the Pixy XSS and SQLI Scanner running against PEAR files.   I tried out the Pixy XSS and SQLI Scanner (http://pixybox.seclab.tuwien.ac.at/pixy/index.php) on a few simple PEAR files.  On the first, I got a java exception, on the second it was unable to resolve the simplest of includes (no ability to resolve include_path). In short, the thing is useless for anything written using PEAR.  Fun!   The Pixy XSS and SQLI Scanner is made to find SQL and XSS injection issues in scripts. It runs as a Java application and scans PHP4 source code to try to find problems. For more information on the scanner or to try it out for yourself, check out the project's homepage for documentation and downloads.
616165
The Zend Developer Zone has another new tutorial from Padraic Brady talking about testing your applications (i.e. unit tests). In this new article, he expands on his previous one and dives a bit deeper into the behaviour-driven development process.   In this article, I introduce a TDD related practice called Behaviour-Driven Development which has been gathering attention for over a year and gaining converts (like me!).   He briefly covers what BDD is and how it can be used to solidify code against issues that might come up down the road (and how it compares to test-driven development). Some sample code/tests are included to give you a better idea of how it all fits together - a set of scenarios for any given "story". True to the title, Padraic writes his tests around the construction of a Klingon Bird of Prey ship.
375759
On the Stubbles blog, Frank Kleine offers some advice to developers looking to use the Reflection API - "don't trust it".   If you try to get informations about parameters from methods of internal classes - forget that. Examining several internal classes my key findings are: either there is no information about parameters available and the reflection API says the method does not have any parameters, or the information about the parameter is wrong.   He includes code examples along side the output from the script to illustrate his point.
710008
Sebastian Bergmann points out a new feature that PHPUnit (the popular PHP unit testing tool) now has - parallel_test_execution allowing for each test to execute on a separate PHP process.   The advantages of this include full test isolation and the fact that a test can now cause a PHP fatal error or even a segmentation fault of the PHP interpreter without interrupting the test execution.   He does mention, however, that it can cause a bit more overhead for larger testing suites since it needs to create a new process (complete with memory usage) for each running test. There are also coding issues that could be thrown off by this option (he gives an example of an inheritance issue with eZ Components).     He also notes some of his thoughts on how to control/configure the process (like in a configuration file) and via an "@isolated" notation to make it easy to do it dynamically.