<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>PHPDeveloper.org</title>
    <link>http://www.phpdeveloper.org</link>
    <description>Up-to-the Minute PHP News, views and community</description>
    <language>en-us</language>
    <pubDate>Thu, 17 May 2012 03:33:24 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[DZone.com: CakePHP - Web Test Cases with SimpleTest]]></title>
      <guid>http://www.phpdeveloper.org/news/16826</guid>
      <link>http://www.phpdeveloper.org/news/16826</link>
      <description><![CDATA[<p>
On DZone.com today there's a new post written up by <i>Mike Bernat</i> about <a href="http://css.dzone.com/news/cakephp-web-test-cases">making web test cases for CakePHP</a> applications with <a href="http://www.simpletest.org/">SimpleTest</a>.
</p>
<blockquote>
Most of the applications I work on have very straight-forward components and not a lot of complex functions/methods. I would only be testing whether or not they worked at all, rather than if they worked in a wide-array of situations. [...] For example, unit-testing a simple news list and detail page is probably overkill. Sure, you can test your classes by simple instantiating them but that only goes so far. My new method involves using SimpleTest's Scriptable Browser to actually crawl webpages and ensure that the proper data is being displayed.
</blockquote>
<p>
He includes a few snippets of code to show how to implement SimpleTest's web test functionality - one that just checks a HTTP response values, another that checks for text on the page, one testing for a login on an admin page and a test for add/edit pages to ensure valid loading based on URLs/links.
</p>]]></description>
      <pubDate>Wed, 07 Sep 2011 10:08:24 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Bradley Holt's Blog: The Case For Rapid Release Cycles]]></title>
      <guid>http://www.phpdeveloper.org/news/16691</guid>
      <link>http://www.phpdeveloper.org/news/16691</link>
      <description><![CDATA[<p>
<i>Bradley Holt</i> has a new post to his blog today talking about something he's a fan of in his development processes - <a href="http://bradley-holt.com/2011/08/the-case-for-rapid-release-cycles/">rapid release cycles</a> - and how something like the Zend Framework could benefit from it.
</p>
<blockquote>
There has been some discussion recently on the Zend Framework mailing list around release cycles. I proposed a release cycle of six months for major versions (someone else suggested eighteen months, which may be more reasonable for a framework). Rapid releases allow one to accelerate the cycle of building, measuring, and learning. Gathering data from actual usage (measuring) provides an opportunity for learning that can be applied to the next release (building).
</blockquote>
<p>
He points out that the post isn't specifically targeted at the Zend Framework project, merely that it was the inspiration point for the idea. He talks about what rapid release cycles are and what it can give the team that implements it - less worries about backwards compatibility breaks, a potential encouragement for development pacing and the ease for the customers doing upgrades.
</p>
<blockquote>
A rapid release cycle allows you to apply new learning, knowledge, and perspective as often as possible. Do your best today, and give yourself opportunities to do your best in the future as well.
</blockquote>]]></description>
      <pubDate>Tue, 09 Aug 2011 08:44:33 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Debuggable Blog: Code Insults Round 1 - Why switch blocks are dumb]]></title>
      <guid>http://www.phpdeveloper.org/news/11305</guid>
      <link>http://www.phpdeveloper.org/news/11305</link>
      <description><![CDATA[<p>
In the first of his "<a href="http://debuggable.com/posts/i-will-insult-your-code!:48ac91d1-ca78-4e95-ad66-1e854834cda3">I will insult your code</a>" series, <i>Nate Abele</i> looks at <a href="http://debuggable.com/posts/code-insults-round-1---why-switch-blocks-are-dumb:4901d363-d210-482c-9794-65bd4834cda3">this submitted code</a> and points out that maybe blocks of switch/case statements aren't such a good idea after all.
</p> 
<blockquote>
The entire submission is actually two files, which together comprise a console script for interacting with a web service (the names of the entrants have been withheld to protect the identities of the guilty). Rather than examine the full entry, we're going to take a look at one part which I find comes up fairly often: switch block overkill.
</blockquote>
<p>
The example he's talking about has a switch statement with eight different cases under it, most of them just setting two properties on the current class. Its used ot map command line parameters to their correct properties. <i>Nate</i> suggests a bit different method - still using switch/case but pulling the properties to be assigned from an array of options rather than hard-coding them into the evaluation.
</p>]]></description>
      <pubDate>Wed, 29 Oct 2008 08:48:28 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Debuggable Blog: Testing Models in CakePHP - Now let's get rid of the unnecessary ModelTest classes!]]></title>
      <guid>http://www.phpdeveloper.org/news/10722</guid>
      <link>http://www.phpdeveloper.org/news/10722</link>
      <description><![CDATA[<p>
On the Debuggable blog today <i>Tim Koschutzki</i> <a href="http://www.debuggable.com/posts/testing-models-in-cakephp---now-let%27s-get-rid-of-the-unnecessary-modeltest-classes-!:4890ed55-be28-4d4a-ba4c-7fd64834cda3">looks at</a> another testing topics for the CakePHP framework - a cleaner way for testing models.
</p>
<blockquote>
Up until now there was always a need to create a so-called test model that extends your model-under-test in order to overwrite its $useDbConfig setting to be 'test_suite'. By that you ensured that your models run with the test_suite datasource when the tests are run. [...] Nate proposed ClassRegistry::config(), which allows you to tell the ClassRegistry class which datasource it shall use when
ClassRegistry::init() is used the next time (and thereby a model is instantiated).
</blockquote>
<p>
He includes an example of the new functionality - a test case ensuring that three articles are there and are marked as published. The registry makes it easier to automatically create the ArticleTest instance inside the test case rather than having to manually declare and define it.
</p>]]></description>
      <pubDate>Thu, 31 Jul 2008 07:51:38 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Debuggable Blog: How to bend Cake's Model::find() method to your needs]]></title>
      <guid>http://www.phpdeveloper.org/news/10463</guid>
      <link>http://www.phpdeveloper.org/news/10463</link>
      <description><![CDATA[<p>
New on the Debuggable blog, <i>Tim Koschutzki</i> has <a href="http://www.debuggable.com/posts/implementing-different-types-for-cake%27s-model::find()-method:485030de-4778-456e-8400-44d84834cda3">posted a method</a> to get the fund() method in the CakePHP framework's models to bend to your will.
</p>
<blockquote>
CakePHP allows you to use your own "find-types" for the Model::find() methodology. Those of your who are familiar with the find() method know that there are currently four types in the core: 'list', 'all', 'first' and 'count'. However, sometimes it is nice to specify your own type.
</blockquote>
<p>
He shows an example of the end result - a find() call with a custom type that automagically gets translated correctly. His script overrides and enhances the usual find call in an extended object (extended from AppModel) that uses a switch/case statement to define the custom types and their find() search calls.
</p>]]></description>
      <pubDate>Mon, 23 Jun 2008 12:08:32 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Sebastian Bergmann's Blog: Support for the Cancel Case Workflow Pattern]]></title>
      <guid>http://www.phpdeveloper.org/news/9495</guid>
      <link>http://www.phpdeveloper.org/news/9495</link>
      <description><![CDATA[<p>
<i>Sebastian Bergmann</i> has <a href="http://sebastian-bergmann.de/archives/741-Support-for-the-Cancel-Case-Workflow-Pattern.html">a post</a> about a new feature of the Workflow component in the <a href="http://ezcomponents.org/">eZ Components libraries</a> - the Cancel Case Pattern.
</p>
<blockquote>
Version 1.2 of the <a href="http://ezcomponents.org/docs/tutorials/Workflow">Workflow</a> component that is part of the <a href="http://ezcomponents.org/">eZ Components</a> adds support for the Cancel Case workflow pattern:
</blockquote>
<p>
Once this Workflow pattern is called the complete Workflow instance is removed from the current execution (including any running nodes). You can find out more about the ezWorkflowNode in <a href="http://ezcomponents.org/docs/api/trunk/Workflow/ezcWorkflowNode.html">their documentation</a>.
</p>]]></description>
      <pubDate>Fri, 25 Jan 2008 09:45:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Mike Lively's Blog: Adding Database Tests to Existing PHPUnit Test Cases]]></title>
      <guid>http://www.phpdeveloper.org/news/8591</guid>
      <link>http://www.phpdeveloper.org/news/8591</link>
      <description><![CDATA[<p>
<i>Mike Lively</i> has <a href="http://www.ds-o.com/archives/64-Adding-Database-Tests-to-Existing-PHPUnit-Test-Cases.html">posted about</a> functionality he's created to add database testing procedures to preexisting <a href="http://www.phpunit.de">PHPUnit</a> tests supplementing <a href="http://www.phpdeveloper.org/news/8569">his other post</a> n adding database support to PHPUnit.
</p>
<blockquote>
When I was first creating the <a href="http://www.ds-o.com/exit.php?url_id=170&entry_id=64">Database Extension</a> for <a href="http://www.phpunit.de">PHPUnit</a> I realized that there was a very high likelihood that several people would have tests that were already written that they would like to add additional database tests too. To accomplish this I actually wrote the PHPUnit_Extensions_Database_DefaultTester class. In fact, if you were to look at the source of the database test case you will see that all of it's operations are actually forwarded to this class which does all of the work.
</blockquote>
<p>
He <a href="http://www.ds-o.com/archives/64-Adding-Database-Tests-to-Existing-PHPUnit-Test-Cases.html">includes his same example</a> from before - the banking system - and shows how the tests can be appended on, adding a getDatabaseTester method that returns an object the rest of the tests can use.
</p>]]></description>
      <pubDate>Wed, 05 Sep 2007 10:50:30 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Ben Ramsey's Blog: Business Case for PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/7278</guid>
      <link>http://www.phpdeveloper.org/news/7278</link>
      <description><![CDATA[<p>
With all of the <a href="http://www.phpdeveloper.org/news/7249">recent talk</a> about business cases for PHP, <i>Ben Ramsey</i> wanted to get some of <a href="http://benramsey.com/archives/business-case-for-php/">his thoughts</a> on the matter out and into his blog in a new post.
</p>
<blockquote>
I don't believe anyone has ever published any white papers on PHP, giving it a business case, and while we have companies like <a href="http://www.zend.com/">Zend</a>, <a href="http://www.omniti.com/">OmniTI</a>, and <a href="http://ezsystems.no/">eZ Systems</a> providing support for PHP, I haven't seen any documentation from them like this. So, last Thursday when <a href="http://blog.stuartherbert.com/php/2007/02/08/what-does-the-business-case-for-php-need-to-cover/>Stuart Herbert announced</a> his <a href="http://groups.google.com/group/whyphp/">Google Group</a> for developing a business case for PHP, I took notice and joined.
</blockquote>
<p>
Definitely good to hear <a href="http://benramsey.com/archives/business-case-for-php/">encouraging words</a> about a project that could ultimately help out the language as a whole break into an area where the growth has been the slowest.
</p>]]></description>
      <pubDate>Wed, 14 Feb 2007 11:16:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Stuart Herbert's Blog: What Does The Business Case For PHP Need To Cover?]]></title>
      <guid>http://www.phpdeveloper.org/news/7249</guid>
      <link>http://www.phpdeveloper.org/news/7249</link>
      <description><![CDATA[<p>
In <a href="http://blog.stuartherbert.com/php/2007/02/08/what-does-the-business-case-for-php-need-to-cover/">a new post</a> to his blog today, <i>Stuart Herbert</i> continues <a href="http://www.phpdeveloper.org/news/7118">the theme</a> he started in a previous post about a business case for PHP. In this new entry, he shares some things he's done to further the effort.
</p>
<blockquote>
To turn this from an idea into reality, I've setup a <a href="http://groups.google.com/group/whyphp/">Google group</a> where anyone who is interested can join in, and help build this resource. Please come along with your ideas and concerns, and let's see what we can achieve together.
</blockquote>
<p>
He also <a href="http://blog.stuartherbert.com/php/2007/02/08/what-does-the-business-case-for-php-need-to-cover/">suggests</a> some "first steps" to get the ball rolling, namely a list of topics the business case needs to cover.
</p>]]></description>
      <pubDate>Fri, 09 Feb 2007 07:49:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Stuart Herbert's Blog: Missing: The Business Case For PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/7118</guid>
      <link>http://www.phpdeveloper.org/news/7118</link>
      <description><![CDATA[<p>
In <a href="http://blog.stuartherbert.com/php/2007/01/17/missing-the-business-case-for-php/">this new post</a> to his blog today, <i>Stuart Herbert</i> suggests something that the PHP community really is in dire need of - a site/resource providing a place developers can point at to help refute some of the PHP rumors floating around and provide examples and test cases for one of the most stubborn PHP markets out there - business.
</p>
<blockquote>
<p>
At work, we make and sell software written in a number of languages; our flagship product is written in PHP.
</p>
<p>
But one of the unfortunate side-effects of Stefan Esser's much-publicized departure from the PHP Security Team has been an increase in the number of IT staff we're coming across who "believe" both that open-source is inherently insecure, and that PHP in particular has incurable problems. These "beliefs" hurt ISVs trying to sell PHP-based applications into skeptical organizations. 
</p>
</blockquote>
<p>
He <a href="http://blog.stuartherbert.com/php/2007/01/17/missing-the-business-case-for-php/">asks why</a> there is no "Why PHP?" resource out there that clients/businesses in general can be referred to for better information. He also suggests one of the most logical fits for this kind of information and is surprised they don't really have something already - <a href="http://www.zend.com">Zend</a>. Check out the comments to see how much of the community is already behind the effort.
</p>]]></description>
      <pubDate>Thu, 18 Jan 2007 08:40:00 -0600</pubDate>
    </item>
  </channel>
</rss>

