Testing a WebDAV Server

Tobias Schlitt » 20 March 2009 » in Open Source Case Studies » 2 Comments

This is an abstract for a chapter from a book on Quality Assurance in PHP Projects.

The eZ Components project was started with the goal to create a high-quality set of independent building blocks for PHP 5 based application development. Making extensive use of unit tests and sticking to strict development and documentation standards were defined as the basic methodology. One of the biggest challenges in terms of testing and quality assurance so far was the eZ Webdav component.

The eZ Webdav component is intended to provide a modular WebDAV server to be embedded in any kind of web application. Its architecture is built to be as customizable and extensible as possible, while it tries on the other hand to compensate the weaknesses of the RFC and common WebDAV clients.

Testing a server is a challenge in general. Testing the WebDAV component brought us to the limit of unit testing and forced us to find new ways of using PHPUnit to ensure code quality and to obviate regressions. Unavoidable deep code dependencies in some parts of the server enforced the extensive use of mock objects to stick to the unit test paradigm. In some areas, like avoiding regressions in the adjusted behavior against special clients, unit testing was even impossible. For this reason, special record/playback-based tests were created and implemented using PHPUnit.

Tobias Schlitt is an active member of the PHP community and works for eZ Systems on the eZ Components.

Trackback specific URI for this entry

2 Comments to "Testing a WebDAV Server"

Display comments as (Linear | Threaded)
  1. gg
    21/03/2009 at 00:12 Permalink
    more details, pleaaase...

    Reply

  2. Sebastian Bergmann
    22/03/2009 at 17:25 Permalink
    At the moment we are just publishing the abstracts (once a week, each Friday) of the case studies that will be part of the book.

    The book will be published this fall.

    Reply

1 Trackback to "Testing a WebDAV Server"

  1. Quality Assurance in PHP Projects 04/11/2009 at 09:36
    It has been quiet on this website since we posted the last contributed chapter abstract in June and it is time to give you an update. But first, allow me to refresh your memory on the list of contributed chapters:Case Studies on QA Processes in CompaniesQ

Add Comment

Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.


Submitted comments will be subject to moderation before being displayed.