<?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>Fri, 08 Aug 2008 15:48:35 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Padraic Brady's Blog: A Domain Specific Language for Behaviour Driven Development (BDD) in PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/10646</guid>
      <link>http://www.phpdeveloper.org/news/10646</link>
      <description><![CDATA[<p>
<i>Padraic Brady</i> has <a href="http://blog.astrumfutura.com/archives/386-A-Domain-Specific-Language-for-Behaviour-Driven-Development-BDD-in-PHP.html">posted about</a> a part of his <a href="http://www.phpspec.org/">PHPSpec</a> library, the domain specific language.
</p>
<blockquote>
PHPSpec implements a domain specific language (DSL) in PHP for specifying the behaviour of functional units such as methods and objects. The purpose of a DSL was to move away from the xUnit style declaration of tests towards a specification language centred on describing behaviour.
</blockquote>
<p>
He illustrates with a bowling example - described with a sample class (with a itShouldScore0ForGutterGame test) and how to use it to fit his proposal:
</p>
<blockquote>
My proposal therefore is to re-implement the current programming language DSL as a specification language - i.e. a new (extremely limited and narrow!) language capable of being parsed by PHPSpec into its PHP equivalent. [...] Using a specification DSL, we can simply ignore the existence of classes in PHP (well, the pretense is nice). Instead the DSL would incorporate a syntax for denoting shared behaviours.
</blockquote>]]></description>
      <pubDate>Mon, 21 Jul 2008 11:13:35 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Padraic Brady's Blog: The PHPSpec Zend Framework App Testing Manifesto: ZF Integration]]></title>
      <guid>http://www.phpdeveloper.org/news/9458</guid>
      <link>http://www.phpdeveloper.org/news/9458</link>
      <description><![CDATA[<p>
Continuing on from his <a href="http://www.phpdeveloper.org/news/9416">preamble</a> on the integration of the PHPSpec BDD tool into the Zend Framework, <i>Padraic Brady</i> has posted <a href="http://blog.astrumfutura.com/archives/336-The-PHPSpec-Zend-Framework-App-Testing-Manifesto-ZF-Integration.html">the next in the series</a> - a look at what it would take to make the integration happen.
</p>
<blockquote>
The ideal was to move away from line-by-line setup and manipulation of Zend instances towards a more simplified model which is standardised for any <a href="http://www.phpspec.org/">PHPSpec</a> specs.
</blockquote>
<p>
He's already created an "experimental branch" to work inside of and some of these updates have been made to the trunk for the release of PHPSpec 0.3.0. The key that he found was in getting the customization of the "Zend Context operational to set up elements of the FrontController". He also includes a simple example of the extended functionality in action - simple interface methods to work with Twitter.
</p>]]></description>
      <pubDate>Mon, 21 Jan 2008 10:21:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Padraic Brady's Blog: ext/snarl: PHP interface to the Windows Snarl Notification Tool API]]></title>
      <guid>http://www.phpdeveloper.org/news/9433</guid>
      <link>http://www.phpdeveloper.org/news/9433</link>
      <description><![CDATA[<p>
In a post a little while back, <i>Padraic Brady</i> wrote about <a href="http://blog.astrumfutura.com/archives/331-extsnarl-PHP-interface-to-the-Windows-Snarl-Notification-Tool-API.html">an extension</a> he whipped up to act as an interface between PHP and the <a href="http://www.fullphat.net/">Snarl</a> notification tool (inspired by Growl from OS X).
</p>
<blockquote>
My intention for the API is to facilitate Window's use of a soon to be announced tool for autotesting in PHP using PHPSpec. 
</blockquote>
<p>
He wants to use it in an automated testing environment that, when tests are detected in the current tests, runs the changed items and reports back the results via the Windows notification service. You can <a href="http://code.google.com/p/php-snarl/">grab the code</a> from the Google Code repository for it and test it our for yourself.
</p>]]></description>
      <pubDate>Wed, 16 Jan 2008 09:33:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Padraic Brady's Blog: The PHPSpec Zend Framework App Testing Manifesto: Preamble]]></title>
      <guid>http://www.phpdeveloper.org/news/9416</guid>
      <link>http://www.phpdeveloper.org/news/9416</link>
      <description><![CDATA[<p>
<i>Padraic Brady</i> has <a href="http://blog.astrumfutura.com/archives/335-The-PHPSpec-Zend-Framework-App-Testing-Manifesto-Preamble.html">posted a manifesto</a> of sorts about the work that he's been doing on his <a href="http://dev.phpspec.org/manual/en">PHPSpec</a> library and trying to work it into the approval process for the Zend Framework.
</p>
<blockquote>
I'll be attempting to pound the Zend Framework into submission so I can apply Behaviour-Driven Development (BDD) using <a href="http://dev.phpspec.org/manual/en">PHPSpec</a> when I write a Controller. Why? Because I feel like it, and it gives me an excuse to promote one possible incarnation of PHPMock and the PHPSpec Zend Framework extension. See? Perfectly reasonable selfishness!
</blockquote>
<p>
He hopes to move it past the typical test-driven development process that PHPUnit offers and "kick your ass into high-TDD gear" without having to have worked much with it before then (the key is simplicity).
</p>
<p>
He includes some code examples (how it should flow) and describes some of the challenges that he's coming across so far, specifically with the way that the Zend Framework works with the Controllers and what he wants to accomplish.
</p>]]></description>
      <pubDate>Mon, 14 Jan 2008 10:22:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Padraic Brady's Blog: PHPSpec 0.2.0 Released]]></title>
      <guid>http://www.phpdeveloper.org/news/9397</guid>
      <link>http://www.phpdeveloper.org/news/9397</link>
      <description><![CDATA[<p>
<i>Padraic Brady</i> has <a href="http://blog.astrumfutura.com/archives/334-PHPSpec-0.2.0-Released.html">officially released</a> the latest version of his behavior-driven development framework <a href="http://code.google.com/p/phpspec/">PHPSpec 0.2.0</a>:
</p>
<blockquote>
With the beta release behind us, I'm happy to announce the immediate availability of PHPSpec 0.2.0 from the project's pear channel at <a href="http://blog.astrumfutura.com/archives/pear.phpspec.org">pear.phpspec.org</a> or you can download directly from <a href="http://pear.phpspec.org/get">http://pear.phpspec.org/get</a>.
</blockquote>
<p>
Also included in <a href="http://blog.astrumfutura.com/archives/334-PHPSpec-0.2.0-Released.html">his post</a> are details about the release (like the Changelog), links to download the latest edition and some personal "thank you"s to developers who submitted patches to bring it from beta to a full release.
</p>]]></description>
      <pubDate>Thu, 10 Jan 2008 14:32:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Padraic Brady's Blog: Mutation Testing Brain Dump]]></title>
      <guid>http://www.phpdeveloper.org/news/9150</guid>
      <link>http://www.phpdeveloper.org/news/9150</link>
      <description><![CDATA[<p>
<i>Padraic Brady</i> has <a href="http://blog.astrumfutura.com/archives/322-Mutation-Testing-Brain-Dump.html">made a post</a> about some of the mutation testing thoughts running through his head for the Behaviour-Driven Development framework he's been working on - <a href="http://www.phpspec.org/">PHPSpec</a>.
</p>
<blockquote>
Mutation Testing is like testing, for tests. The idea is actually quite simple. Mutation testing adds small changes to your source code on the assumption that changing something, will most likely break it, which in turn means at least one test/spec should fail. [...] The reason why it's useful it that it gets around the problem of being over reliant on code coverage - just because some code executes when running tests, doesn't prove the tests will detect problems with it!
</blockquote>
<p>
He wants to create a way that doesn't rely on external dependencies and is looking at working with <a href="http://ie2.php.net/tokenizer">the tokenizer functions</a> native to PHP. He includes two examples of the way he's thinking - an example of simple token output and a way to go "backwards" to recreate the original source code.
</p>]]></description>
      <pubDate>Fri, 30 Nov 2007 10:26:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Padraic Brady's Blog: PHPSpec Reporting Gets A Needed Boost]]></title>
      <guid>http://www.phpdeveloper.org/news/9042</guid>
      <link>http://www.phpdeveloper.org/news/9042</link>
      <description><![CDATA[<p>
<i>Padraic Brady</i> has <a href="http://blog.astrumfutura.com/archives/318-PHPSpec-Reporting-Gets-A-Needed-Boost.html">made a few updates</a> to the PHPSpec software he's developed in preparation for the first stable release - additions to the reporting functionality to give as much information as possible.
</p>
<blockquote>
PHPSpec is closing in on its first stable release, so the time had finally come to spruce up its output! No more the simple reporting of failed specs - now you get a few more details in a readable format, exceptions and errors even come with traces. In addition, I've implemented specdoc output as an option (using "-s") so you can get a list of specs in their plain text form.
</blockquote>
<p>
He's also included an example of the new output in the post as well, showing the results of both successful and errored responses. You can check out the actual spec files on the <a href="http://phpmock.googlecode.com/svn/branches/padraic/specs/">googlecode repository</a> for the project and get more details on the project itself (including the latest development snapshots) on the <a href="http://dev.phpspec.org/">project's website</a>.
</p>]]></description>
      <pubDate>Wed, 14 Nov 2007 14:25:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Padraic Brady's Blog: The PHPSpec 0.2.0devel API]]></title>
      <guid>http://www.phpdeveloper.org/news/8983</guid>
      <link>http://www.phpdeveloper.org/news/8983</link>
      <description><![CDATA[<p>
<i>Padraic Brady</i> has <a href="http://blog.astrumfutura.com/archives/315-The-PHPSpec-0.2.0devel-API.html">an update</a> posted about the latest development version of his <a href="http://code.google.com/p/phpspec/">PHPSec</a> framework (for behavior-driven development in PHP).
</p>
<blockquote>
I had a request to make a very quick summary of the <a href="http://www.phpspec.org/">PHPSpec</a> API for the current development snapshots over on <a href="http://dev.phpspec.org/">http://dev.phpspec.org</a>. We're lacking documentation for right now, so here's a brief overview.
</blockquote>
<p>
He describes some base assumptions about the development so far, conventions for making a valid spec class (including "fleshed out code" to make it work), a list of the Matchers currently available and a mention of the Predicates to help with the evaluations. 
</p>
<p>
You can also check out <a href="http://blog.astrumfutura.com/archives/314-PHPSpec-hits-Subversion-Revision-100.html">some of his thoughts</a> on the project and behavior-driven development as it hit its 100th Subversion revision.
</p>]]></description>
      <pubDate>Tue, 06 Nov 2007 12:02:00 -0600</pubDate>
    </item>
  </channel>
</rss>
