tags:

views:

54

answers:

0

I'm trying to decide which approach to take to testing a Django app I'm writing. I've seen Cucumber and that put me onto lettuce (URL is lettuce.it) and pycurracy. I like the look of these frameworks since hopefully non-technical people will be able to write definitions.

I want to be able to:

  • run functional tests integrated with Django, so sometimes inspecting models,
  • test behaviours via a web browser - pycurracy seems to make this easier since there are already Selenium bindings. But Selenium is slow, so I'd be happier using a headless, ideally Javascript-capable browser for testing.

It seems like Lettuce can do the first easily, but the second will require me to build a library of steps for actions like "I click button x", etc. Conversely, I can't see any specific mention of Django and Pycurracy, although it can handle the second point.

Lettuce has a lower version number, but that doesn't mean it's inferior.

Has anyone used either or both of these? Any advice?

How do these work out when you have a reasonably large/complex project?