Search code examples
cucumberserenity-bddcucumber-serenity

What is the difference between Serenity BDD Framework and Cucumber tool


Today I've got some theoretical question. I have a little experience in BDD with Cucumber. Now I started working in API testing and I faced with Serenity BDD framework on my new project. It is used with Cucumber. So I would like to clarify what is the difference between Serenity BDD Framework and Cucumber and why can't we use just Cucumber for our tests, because it seems to me, like these two tools are doing the same job. Could anybody give me some explanation or maybe some link to correspondent documentation. Thanks in advance!


Solution

  • No, those are 2 different things.

    • Cucumber is the layer to map BDD syntax, which is written in .feature file, with actual code that does the job.

    • Serenity BDD is the framework supporting 3 different approaches:

      • Cucumber: same features as stand-alone cucumber, can work with UI or API Automation
      • Page Object: works with UI automation (selenium)
      • Screenplay: a design pattern for UI and API automation
    • Serenity BDD does many things for auto testers that: