Testmark: a Markdown Convention for Test Fixtures and Data

Eric Myhre

Playlists: 'gpn20' videos starting here / audio

Have you ever struggled with keeping examples and documentation up-to-date? Do you write standards and test fixtures that need to be used in lots of languages, so you need a format everyone can agree on? And lastly, do you use Markdown?

Testmark is a simple convention for annotating code blocks in markdown so they can be loaded into your program as data. It's great for test fixtures and executable examples. Libraries let you treat it as a pseudofilesystem: you can put as many data hunks as you want in one file, and also update them programmatically. The testmark parsers also carefully leave the rest of your markdown _alone_, meaning you can intersperse whatever prose and styling with your code blocks you want.

In this talk, we'll show the testmark syntax, the testmark libraries (yes, in multiple languages), and examples of testmark in the wild and the impact it had on projects that adopted it. Also, there are extensions to testmark dedicated to blackbox testing of executables; come see those in action too!