Skip to content

Classical vs BDD

Testomat.io has two project types: Classical and BDD. Both hold manual and automated tests. They differ in how you write a test, where its data lives, and how it connects to code.

Classical and BDD compared by format, main unit, and automation

Classical if youBDD if you
Write mostly manual testsWrite scenarios with business, dev, and QA together
Move from spreadsheets or another TMSUse a Cucumber-based framework
Want to describe steps in your own wordsWant every step backed by code

You choose the type when you create the project, and it cannot be changed later.

ClassicalBDD
Test formatMarkdownGherkin
EditorBlock and MarkdownGherkin only
SyntaxFree-formFixed - Given, When, Then, And
The main unitThe testThe feature file
Tags and details liveOn the testIn the feature file
Automation matches byTest title and file pathEvery step, one by one
TemplatesYesNo
Invalid testCannot happenSaves as a draft until you fix it

Classical takes whatever you type. A step can be a sentence, a paragraph, or a table.

BDD reads Gherkin as you type. Misspell a keyword and the test will not save.

Gherkin editor showing a validation error on a scenario with a missing keyword

That is why BDD has Save To Draft and Classical does not. Free-form Markdown has nothing that can fail.

In Classical, a test carries its own data, so it moves or copies on its own.

In BDD, you are moving a part of a document. Check that the feature file it came from still makes sense.

Classical matches a test to code by title. A step is free text, so it can describe an action no code performs.

BDD matches every line to a step definition. A line without one is a gap, not a description.

Classical matches one test to code, BDD matches every step to its own definition

The payoff is reuse. Once Given I am on the login page has a definition, every scenario that needs a login reuses it.

Write one action per line. A step that bundles three actions needs its own definition and fits nowhere else.

You cannot add Gherkin tests to a Classical project. Some things can break:

What breaksWhy
SyntaxA Markdown test in a Gherkin suite has no keywords. The feature file stops working in the editor and in your framework.
DataOne format keeps details on the test, the other in the file. The system cannot tell separate tests from one shared document.
AutomationSome tests would need a definition per line, others map to nothing on purpose. Half of the reports come out wrong.