tool to write behaviour driven unit tests