<?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>Mon, 21 May 2012 08:42:10 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Shashikant Jagtap's Blog: Enjoy 'MinkExtension' for Behat]]></title>
      <guid>http://www.phpdeveloper.org/news/17923</guid>
      <link>http://www.phpdeveloper.org/news/17923</link>
      <description><![CDATA[<p>
In <a href="http://lestbddphp.wordpress.com/2012/05/07/enjoy-minkextension-for-behat/">this new post</a> to his blog <i>Shashikant Jagtap</i> talks about a new extension for <a href="http://behat.org">Behat</a> (the BDD testing tool) that makes working with Mink even easier - <a href="https://github.com/Behat/MinkExtension">MinkExtension</a>.
</p>
<blockquote>
'<a href="https://github.com/Behat/MinkExtension">MinkExtension</a>' has been just released which has additional services for <a href="http://behat.org/">Behat</a>. This extension has 'Mink' instance for your 'FeatureContext' and 'SubContext'. UI testers would be happy now, as they don't need to create Mink instance every time in order to use Mink API's.
</blockquote>
<p>
He points you to <a href="https://github.com/Behat/MinkExtension-example">an example application</a> you can use to follow along. He includes the commands needed to install the dependencies via Composer and get this extension working (note: it requires PHP 5.4 for some of the traits stuff. If you don't want to use that, comment out the "TraitedFeatureContext.php" file). Also included are the commands to execute the tests with a <a href="http://seleniumhq.org/download/">Selenium</a> server and a list of a few handy new things this extension enables.
</p>]]></description>
      <pubDate>Tue, 08 May 2012 10:55:55 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Shashikant Jagtap's Blog: Adding More Sauce To Behat]]></title>
      <guid>http://www.phpdeveloper.org/news/17862</guid>
      <link>http://www.phpdeveloper.org/news/17862</link>
      <description><![CDATA[<p>
On his "Let's BDD" blog <i>Shashikant Jagtap</i> looks at the integration of <a href="http://lestbddphp.wordpress.com/2012/04/24/adding-more-sauce-to-behat/">Saucelabs and Behat</a> for even more functionality when creating BDD tests.
</p>
<blockquote>
On the occasion of Selenium Conference, I met with <a href="https://twitter.com/#!/noahsussman">Noah Sussman</a> talking about "Selenium In the Enterprise: What Went Right, What Went Wrong (So Far)" and one of his <a href="http://www.slideshare.net/noahsussman/selenium-in-the-enterprise-what-went-right-and-what-went-wrong-so-far-selenium-conf-2012-london">slides</a> indicated that, team using Behat and <a href="http://mink.behat.org/">Mink</a> for the functional testing at <a href="http://www.etsy.com/">Etsy</a>. Noah then introduced me to Laura Beth who setup Behat/Mink and SauceLabs integration. Behat-Sauce configuration by Laura Beth is very easy to use. Now, we will see this in action.
</blockquote>
<p>
<i>Shashikant</i> shows how to clone the github repository for the <a href="https://github.com/Shashi-ibuildings/Behat-Sauce-Demo">behat-suacelabs tool</a> Etsy uses, use Composer to get all of the needed dependencies and a sample set of tests showing a sample set of Scenarios and their matching features (code). You can watch a video of the result <a href="https://saucelabs.com/jobs/9d578e253a614b2abed5d6ecad1b6c5d">here</a>.
</p>]]></description>
      <pubDate>Wed, 25 Apr 2012 08:20:55 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Shashikant Jagtap's Blog: PHPUnit + Behat/Mink + Page Object: The Rockstar Combination of Testing]]></title>
      <guid>http://www.phpdeveloper.org/news/17845</guid>
      <link>http://www.phpdeveloper.org/news/17845</link>
      <description><![CDATA[<p>
Earlier this month <i>Shashikant Jagtap</i> wrote up a post about a powerful combination in testing your applications - a "rockstar" combo of <a href="https://lestbddphp.wordpress.com/2012/04/07/phpunit-behatmink-page-object-the-rockstar-combination-of-testing/">PHPUnit + Behat/Mink + Page Object</a> to give you a great foundation for BDD (behavior-driven) testing.
</p>
<blockquote>
Last month, we had discussion about implementing page object pattern in <a href="https://github.com/Behat/Mink">Behat/Mink</a> framework at <a href="http://www.meetup.com/LondonBehatUsers/">London Behat Users meetup</a>. <a href="http://blog.josephwilk.net/cucumber/page-object-pattern.html">Page object</a> pattern is a cool way to make tests maintainable, reusable and readable. Everyone was interested to know more about Page Object Pattern. In this short tutorial, we will implement Mink and PHPUnit  combination for functional testing. Mink and PHPUnit combined with Pageness (Page Object) can be used for maintainable and readable tests.
</blockquote>
<p>
He assumes that you might not have all the tools needed installed, so he walks you through the setup/install of PHPUnit, the <a href="https://github.com/Shashi-ibuildings/PHPUnit-Mink">PHPUnit-Mink framework</a> and both the <a href="http://sourceforge.net/projects/sahi/">Sahi</a> and <a href="http://seleniumhq.org/download/">Selenium</a> drivers. He includes a basic directory structure for the testing and shows how to create some Page Object classes that extend the default TestCase and make calling the remote resource simple. He also includes the steps needed to execute the tests via PHPUnit.
</p>]]></description>
      <pubDate>Fri, 20 Apr 2012 10:49:54 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Codeception Blog: BDD Approach to Unit Testing with Codeception]]></title>
      <guid>http://www.phpdeveloper.org/news/17545</guid>
      <link>http://www.phpdeveloper.org/news/17545</link>
      <description><![CDATA[<p>
<i>Michael Bodnarchuk</i> passed along a new post on the Codeception site about using the tool <a href="http://codeception.com/02-15-2012/unit-testing.html">in a behavior-driven testing methodology</a>. This post is a follow up to <a href="http://codeception.com/01-20-2012/starting-acceptance.html">their previous one</a> covering acceptance testing.
</p>
<blockquote>
With BDD approach in Codeception, any test, even the unit test, is written as a scenario. By this scenario you declare what you are doing and what results you expect to see. In traditional xUnit scheme your test is just a piece of code that uses the method being tested. This piece of code becomes a mess when you test complex units depending on other classes or when you need to check data in a database, etc. Codeception always keeps your unit tests simple and readable.
</blockquote>
<p>
Sample code is included for a simple "User" model class that needs testing. Since the class only directly contains a "create" method, that's all they test - setting up a new user, calling "create" and checking to see if they exist. This basic test is modified slightly to handle the exceptions that might be thrown from the "create" method (when something happens like the user already exists) and checking the user's default role assertions. Plus, using <a href="http://codeception.com/02-14-2012/generators-release-1-0-3.html">this plugin</a> for DocBlox</a>, you can generate readable test documentation directly from the code.
</p>]]></description>
      <pubDate>Wed, 15 Feb 2012 10:22:19 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Project: Mink library integration bundle for Symfony2 (for Behat)]]></title>
      <guid>http://www.phpdeveloper.org/news/16231</guid>
      <link>http://www.phpdeveloper.org/news/16231</link>
      <description><![CDATA[<p>
<i>Konstantin Kudryashov</i> has linked to a new tool that's adds BehatMink browser abstraction library for your Symfony2 project as a part of the <a href="http://behat.org">Behat</a> project (a BDD testing tool for PHP).
</p>
<blockquote>
You can now test your Symfony2 applications with PHPUnit and Mink, thanks to brand new MinkBundle.
</blockquote>
<p>
This new tool provides a clean API, support for Symfony2's test.client browser emulator and support for the Goutte and Sahi browser emulators as well. In <a href="https://github.com/Behat/MinkBundle#readme">the README</a> on it's github page, they've provided some sample code snippets that show how to register the namespaces, add it to your application kernel/add the config, enable the GoutteDriver and SahiDriver and, of course, write a first test.
</p>]]></description>
      <pubDate>Thu, 21 Apr 2011 11:44:02 -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[Sebastian Bergmann's Blog: Support for BDD and Stories in PHPUnit 3.3]]></title>
      <guid>http://www.phpdeveloper.org/news/9441</guid>
      <link>http://www.phpdeveloper.org/news/9441</link>
      <description><![CDATA[<p>
On his blog today <i>Sebastian Bergmann</i> has <a href="http://sebastian-bergmann.de/archives/738-Support-for-BDD-and-Stories-in-PHPUnit-3.3.html">posted about</a> new functionality that's been added to the PHPUnit unit testing package for PHP - support for BDD and Stories.
</p>
<blockquote>
PHPUnit_Extensions_Story_TestCase is a new extension for PHPUnit that has been contributed by <a href="http://www.xait.no/">Xait</a>, a company that I visited last fall. It adds a story framework with a <a href="http://martinfowler.com/bliki/DomainSpecificLanguage.html">Domain-Specific Language (DSL)</a> for <a href="http://dannorth.net/whats-in-a-story">Behaviour-Driven Development (BDD)</a>.
</blockquote>
<p>
He <a href="http://sebastian-bergmann.de/archives/738-Support-for-BDD-and-Stories-in-PHPUnit-3.3.html">includes an example</a> of the new extension in action - creating a Story, adding Steps to it and the output that would result from the execution (reading?) of the example.
</p>]]></description>
      <pubDate>Thu, 17 Jan 2008 08:48: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>
  </channel>
</rss>

