diff options
author | Daniel Silverstone <dsilvers@digital-scurf.org> | 2021-07-12 18:01:32 +0100 |
---|---|---|
committer | Daniel Silverstone <dsilvers@digital-scurf.org> | 2021-07-12 18:01:32 +0100 |
commit | 2fc58751541d9044ff4b3a2cbcdbde280e05ddaf (patch) | |
tree | 654fdb8f239eb491eeb721791b91fa862d25fc30 | |
parent | ae82393dea2370103f42bc4ad08720dab311f152 (diff) | |
download | blog-2fc58751541d9044ff4b3a2cbcdbde280e05ddaf.tar.bz2 |
Subplot first alpha
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
-rw-r--r-- | posts/subplot_first_public_alpha.mdwn | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/posts/subplot_first_public_alpha.mdwn b/posts/subplot_first_public_alpha.mdwn new file mode 100644 index 0000000..bb186ef --- /dev/null +++ b/posts/subplot_first_public_alpha.mdwn @@ -0,0 +1,49 @@ +[[!meta title="Subplot - First public alpha release"]] +[[!meta author="Daniel Silverstone"]] +[[!meta date="2021-06-12 17:50:00 +0100"]] +[[!tag draft]] + +This weekend we ([Lars][] and I) finished our [first public alpha release][rel] +of [Subplot][]. Subplot is a tool for helping you to document your acceptance +criteria for a project in such a way that you can also produce a programmatic +test suite for the verification criteria. We centre this around the concept +of writing a Markdown document about your project, with the option to write +Gherkin-like _given/when/then_ scenarios inside which detail the automated +verification of the acceptance criteria. + +This may sound very similar to [Yarn][], a similar concept which Lars, Richard, +and I came up with in 2013. Critically back then we were very 'software +engineer' focussed and so Yarn was a testing tool which happened to also produce +reasonable documentation outputs if you squinted sideways and tried not to think +too critically about them. Subplot on the other hand considers the documentation +output to be just as important, if not more important, than the test suite +output. Yarn was a tool which ran tests embedded in Markdown files, where +Subplot is a documentation tool capable of extracting tests from an acceptance +document for use in testing your project. + +The release we made is the first time we're actively asking other people to try +Subplot and see whether the concept is useful to them. Obviously we expect there +to be plenty of sharp corners and there's a good amount of functionality yet to +implement to make Subplot as useful as we want it to be, but if you find +yourself looking at a project and thinking "How do I make sure this is +acceptable to the stakeholders without first teaching them how to read my unit +tests?" then Subplot may be the tool for you. + +While Subplot can be used to produce test suites with functions written in Bash, +Python, or Rust, the only language we're supporting as first-class in this +release is Python. **However** I am personally most interested in the Rust +opportunity as I see a lot of Rust programs very badly tested from the +perspective of 'acceptance' as there is a tendency in Rust projects to focus on +unit-type tests. If you are writing something in Rust and want to look at +producing some high level acceptance criteria and yet still test in Rust, then +please take a look at Subplot, particularly how we test [subplotlib][] itself. + +Issues, feature requests, and perhaps most relevantly, code patches, gratefully +received. A desire to be actively involved in shaping the [second goal][goal] of +Subplot even more so. + +[lars]: https://blog.liw.fi/ +[rel]: https://subplot.liw.fi/blog/2021/07/11/announcement/ +[subplot]: https://subplot.liw.fi/ +[subplotlib]: https://gitlab.com/subplot/subplot/-/tree/0.2.1/subplotlib +[goal]: https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A2 |