Practicalweb Ltd

Technical information on this site may be out of date : no updates since 2015

Integrating Selenium and Hudson

May 12, 2011 , posted under php drupal testing agile selenium phpunit simpletest hudson

Hudson is a continuous integration server - it runs and monitors ‘jobs’ in a way that is useful to regularly build software and report on any errors.

Selenium is a suite of tools specifically for testing web applications - it tests the full website by automating the running of one or more browsers (so you can test all that pointy clicky ajaxy stuff)

Read More…

Debugging SOAP with Xdebug and Eclipse

October 14, 2010 , posted under php eclipse xdebug soap

It’s been a while since I’ve worked on a project which is providing as well as consuming web services.

In this case I need to debug incoming requests that are not initiated from with the browser (I’m using soapui as a test tool).

In order to allow Eclipse to pick up xdebug responses triggered by requests from soapui I just needed to

Read More…

Accessing CKAN data from PHP

February 23, 2010 , posted under php drupal ckan open data

I’ve been working on a couple of open data projects recently - which has been very rewarding.

A couple of people have asked for some code so I’ve knocked up a quick version of the sort of thing I’ve been working on.

This code requires PHP 5.1 for the JSON functions but doesn’t need any extra libraries (pecl_http can give better error messages but is a bit of a pain to install).

The Notes field in packages returns output in Markdown format - you can convert this to HTMl with a parser available at

This isn’t production code so please test before using.

Read More…

Multi-threaded PHP

July 24, 2009 , posted under php multi-threading

OK so it isn’t quite multi-threaded, but forking and controlling processes in the command line environment is still pretty powerful and something I’ve wanted to do on a couple of occasions.

Read More…

xdebug and Eclipse

July 21, 2009 , posted under php eclipse xdebug pdt

xdebug is an immensely powerful tool for exploring what your code really does.

You can get a long way using print_r but ultimately this always requires that you predict the path your code will take - and the tricky bit about debugging is you need it when your predications have gone wrong.

It’s generally pretty easy to set up

Read More…

Things to like about Symfony so far

June 28, 2009 , posted under php symfony frameworks mvc

A few days into learning Symfony and so far I’m keen on

  • configuration check to start with
  • good MVC separation
  • ability to generate initial MVC components from a database definition
  • form validation to match database constraints
  • wrapping various HTTP functions and globals in a request and response object
  • separate dev and prod environments
  • ajax integration - like defining a div as draggable in PHP
  • explicit support for initial and test data

Read More…