Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage Presentations Find the Right Abstraction Level for Your Tests

Find the Right Abstraction Level for Your Tests



Gerard Meszaros advises on using the right abstraction level and automation tools when creating unit or system-level tests.


Gerard Meszaros is an independent software development consultant and trainer with 30+ years experience in software and over a decade of experience in agile methods. He authored xUnit Test Patterns – Refactoring Test Code which won a Jolt Productivity Award. He is based near Calgary Canada and has coached teams and taught courses as far afield as China, India and Europe.

About the conference

CRAFT is about software craftsmanship, which tools, methods, practices should be part of the toolbox of a modern developer and company, and it is a compass on new technologies, trends.

Recorded at:

Sep 19, 2014

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • Excellent presentation

    by Richard Langlois,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    I completely agree with you Gerard, writing test using domain language is the way to go.

    Richard Langlois
    Principal Software Engineer, Microsoft, Burlington, MA.

  • Literacy, clarity and domain language - Oh My!

    by Bill Turner,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    No short presentation can be all things. This one explains well the ideas of the right abstraction level, ultimately arriving at tests that are literate, clear and concise, and use domain language. He argues that we should not think of what to put into a test, but rather what can we leave out. His demonstration doing so is good, though I may experiment a bit with builders that have an "irrelevant" object method, or otherwise try to improve upon that concept. I also liked his reasoning for embracing the given/when/then paradigm. It is something I came to awhile ago for the same reasons. It focuses one on the essence of the test. Finally, his use of method names closely mirrors what I feel should be done.
    The presentation offers more. These are just the highlights I found worth sharing. Watch it.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p