User Test Driven Development

User Test Driven Development

We are strong believer of Test Driven Development. It’s a very powerful approach that allows you to write tests before actually writing code. (These tests are actually specifications). That is how we created our parsers : we selected random feeds on the web, and decided what should be the mapping between their data and our standard Atom schema. Then, we wrote the code to actually perform the mapping.

Unfortunately, the web isn’t standard (that’s actually one of the problems we tackle!), so there are probably feeds out there for which the mapping that we’ve identified isn’t what you would expect us to do. You can help us improve our mapping to fit your needs.

In our test suites we have YAML files representing these mappings and their corresponding XML files. Then, we run it by comparing the parsed document to the YAML mappings.

Here is and XML feed :

Here is a example of mapping :

If you have identified a feed that you think we’re not parsing correctly, please, send us a this feed.xml file, along with the corresponding specification yaml file. We will then fix our code so that we extract the right info from your file.

You can use this template for the mapping file.

Liked this post? Read the archive or

Previously, on the Superfeedr blog: Building Realtime : turning feeds into streams.