Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>There are at least two mature, stand-alone, JUnit style test suites available, named <a href="http://www.phpunit.de/" rel="noreferrer">PHPUnit</a> and <a href="http://www.simpletest.org/" rel="noreferrer">SimpleTest</a>, respectively. </p> <p>As far the MVC Frameworks go, Symfony has its own testing framework named <a href="http://www.symfony-project.org/book/1_0/15-Unit-and-Functional-Testing" rel="noreferrer">lime</a>, Code Igniter has a <a href="http://codeigniter.com/user_guide/libraries/unit_testing.html" rel="noreferrer">unit_test</a> library and <a href="http://bakery.cakephp.org/articles/view/testing-models-with-cakephp-1-2-test-suite" rel="noreferrer">CakePHP</a> relies on the aforementioned SimpleTest. </p> <p>I know that Zend Studio has built in support for PHPUnit tests, and both PHPUnit and SimpleTest have command-line runners so integration into any workflow is possible.</p> <p>The tools are there in the PHP world if a developer wants to take advantage of them, and smart shops do take advantage of them.</p> <p>The caveats are your par for the course PHP complaints. There are two PHP communities; PHP as a platform for building software, and PHP as a way to interact with a web server, web browser, and database to produce application-like things on the web. It's less a black and white thing and more a continuum; Among those more on the software developer side unit testing and TDD is supported and used as much as it is on any other platform. Among the "cobble together a bunch of stuff I don't understand but still get results people", it's unheard of.</p> <p>There's a lot of non-framework/custom-framework legacy PHP code around that's difficult to get a useful test harness around. PHP also lends itself easily to patterns that rely on the existence of a browser environment to run. I don't have any evidence to back this up other than my own observations, but a lot of PHP shops that care about testing end up relying on acceptance testing (i.e. Selenium) as a substitute for actual Unit Testing, test-first, etc. development.</p> <p>In your specific situation, interview the hell out of the developer your group is going to hire. </p> <ol> <li><p>Ask them what unit testing framework they use</p></li> <li><p>Ask them to describe, in general terms, a real world example of a time they developed a new feature and its supporting tests</p></li> <li><p>Ask them to describe, in general terms, a real world example of a time their tests failed and what they did to resolve the situation </p></li> </ol> <p>You're less interested in the specific situation they're going to describe and more interested in how comfortable they are discussing their knowledge of code testing in general. </p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload