Program JavaZone

Lyntale Onsdag 2. september

Spec, Test, Doc: One Table, Three Lives

Room 6

Engelsk 20 min Agentic coding Spec-driven development Testing JUnit Executable Specifications Specification-by-example

Nils Christian Haugen

Nils Christian loves creating software products. He is a long-time programmer and agile practitioner, combining deep technical skills with solid coaching, leadership, and communicative skills. As a consultant at Scienta, he helps clients deliver software at high pace.

Do you keep the spec around after the feature is built? Most of us do not. It goes stale, the tests get written separately, and the documentation comes later if at all — three artefacts, three chances to drift apart.

Specification by example gives you one instead. Agree the behaviour first, as a table of concrete examples. With TableTest, an open-source JUnit extension, that same table runs as a test and publishes as a report someone who does not read Java can read.

We will follow one small feature through: written, reviewed, green, published. Then the rules change and we do it again. A coding agent drafts the tables; the decisions stay yours.

Java and Kotlin developers who want their tests to do more than one job.

  1. Hvordan logger kan felle en Nav-direktør Room 1
  2. Building Intelligent Java Apps: Agent Patterns, MCP, and the Future of AI Native Design Room 2
  3. The lightweight approach to building internal developer platforms Room 3
  4. When ORM Becomes OMG: Performance Pitfalls in JPA and Friends Room 4
  5. Personalizing Your Random Numbers Room 5
  6. 10 Things I Hate About Java Room 7
  7. The Bold, the Broken, and the Burned: Hard won lessons in the 7 years of developing Quarkus Room 8