CODEX

End 2 End (Functional) Testing with Cucumber-JVM

Colin But
CodeX
5 min readMar 18, 2021

--

First Things First

Cucumber is a BDD (Behaviour Driven Development) tool and BDD is a software development design technique aimed at developing End 2 End tests to drive the design of the application code.

Reference: Behaviour Driven Development

When you have read what i’ve just wrote above, you might immediate think that it is very similar to TDD (Test Driven Development).

In a way it is.

Reference: Test Driven Development

Thus, BDD aims at solving the inefficiencies that TDD produced. Although TDD seems perfect in its philosophies, not many developers took up the TDD approach.

Maybe developers were so used to writing application code first by the time TDD became mainstream. Or maybe, developers were so delivery focus such that they wanted to prioritize on developing the application code as that is what is producing the end software product at the end of the day. You can say that it is adopting a result driven approach. Many other developers argue that is in the detriment to the quality of the code.

But overall, BDD mainly was developed to encourage developers to adopt a test first approach in writing the automated software tests first…

--

--

Colin But
CodeX

Writer sharing thoughts on pretty much everything. P.S. I’m a Coffee-Addict ☕ You can support me by buying me a coffee: https://bit.ly/3hQ5M63