<?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>Wed, 22 May 2013 14:35:06 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[MaltBlue.com: Why Testing Makes a Project Successful and You Can't Afford to Deny It]]></title>
      <guid>http://www.phpdeveloper.org/news/19500</guid>
      <link>http://www.phpdeveloper.org/news/19500</link>
      <description><![CDATA[<p>
<i>Matthew Setter</i> has a new article on his MaltBlue site today that suggests that one of the reasons a project is successful is <a href="http://www.maltblue.com/software-development/testing/why-successful-software-includes-testing">because of effective testing</a>.
</p>
<blockquote>
Like many of us, despite being told repeatedly how great testing is, the benefits it will bring, the time it will save and how it will improve the quality of my applications, I too considered testing a second-thought. I saw it as something which was both expensive and time-consuming. If I was genuine with you, I'd say I believed it be be nothing more than a "nice to have", after the application was written. If you also feel (or have felt) this way - know that you're not alone.
</blockquote>
<p>
He realized, though, that the usual false assumptions about testing were just that and starteed getting into testing, TDD and BDD on recent projects. He talks some about some general thoughts around testing like "testing can't be an after-thought" and the fact that it's no always easy. He includes a way of thinking about testing in your application and the confidence good, solid tests can bring.
</p>
Link: http://www.maltblue.com/software-development/testing/why-successful-software-includes-testing]]></description>
      <pubDate>Wed, 24 Apr 2013 10:48:15 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Shashikant Jagtap: Behat2.4 : Painless installation with Composer]]></title>
      <guid>http://www.phpdeveloper.org/news/18433</guid>
      <link>http://www.phpdeveloper.org/news/18433</link>
      <description><![CDATA[<p>
<i>Shashikant Jagtap</i> has a new post to his site today showing how to <a href="https://lestbddphp.wordpress.com/2012/08/31/behatcomposer/">painlessly install Behat (2.4)</a> with the help of the Composer package manager.
</p>
<blockquote>
Behat has becoming so popular in recent days. Behat has drastic changes in recent days in order to add some cool features into it. [...] In this tutorial, we will see how to upgrade Behat vesion with use of composer . Most of us have been installed Behat with 'pear' packages. behat version installed with pear has no longer supported.
</blockquote>
<p>
He includes the commands to remove the current PEAR install (if it's there) and what you'll need to add to your "composer.json" file to pull in the main Behat package as well as the Geherkin parser and Mink extension. There's also a command you can use to be sure everything's working correctly.
</p>]]></description>
      <pubDate>Mon, 03 Sep 2012 08:47:50 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Project: Major Codeception Update (BDD in PHP)]]></title>
      <guid>http://www.phpdeveloper.org/news/18333</guid>
      <link>http://www.phpdeveloper.org/news/18333</link>
      <description><![CDATA[<p>
The Codeception project (BDD testing in PHP) has gotten a <a href="http://codeception.com/08-07-2012/major-codeception-update.html">major update</a> to its feature set and has bumped up to v1.1:
</p>
<blockquote>
Many core classes were refactored to solve the common issues and reduce the level of dark magic inside. Only white magic left. And that's really cool 'cause you don't need to study to source code to implement your custom hooks now. Codeception is rapidly evolving to be the professional testing tool, ready to use by testsers and developers through out the PHP world.
</blockquote>
<p>
Improvements in this large update include an update to the method of test execution, "grabbers" (helper methods that can extract content from tests), the introduction of XPath support to locate items in the content pulled into the test and the integration with unit testing. Upgrade instructions are also included.
</p>]]></description>
      <pubDate>Wed, 08 Aug 2012 11:09:11 -0500</pubDate>
    </item>
    <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>
  </channel>
</rss>
