tl;dr A command line tool for creating a test charter exported in markdown or html.
Work has been looking to formalize our exploratory testing efforts and the idea of exploratory test charters was brought up. From there, I read up on Session Based Testing and found it intriguing. I started looking for something to help me in my session based testing efforts: something lightweight, unobtrusive, and exports the charter in a useful format. When I didn’t find anything that I thought would fit my needs, I starting writing Charter. It’s a simple command line tool for creating and exporting test charters in Markdown or HTML. I took this as an opportunity to brush up on my Ruby skills and create something that perfectly met my needs. Charters are saved in a folder with any defect screenshots associated with the charters. My team uses the Github wiki with our repository so I have my charters saving to a folder in the wiki repository so they are publicly accessible if needed. Tags can be added to charters and Charter will find all charters with a given tag. Charter is currently OS X only with no immediate plans to verify if it works on Windows yet. Take a look and try Charter out for yourself! I would love some feedback!
You can find the source on Github here and as a Ruby gem here.
Installation
Charter was created as a Ruby gem and is available through Rubygems.org. Installation is as simple as:
[sudo] gem install charter
After installing the gem, create a ~/.charterrc file and add the following:
1 2 3 4 |
|
Usage
charter [global options] command [command options] [arguments...]
Creating a new charter is as easy as charter start “My charter title here”
. This will create a new charter in the folder specified in your ~/.charterrc file.
charter purpose “This is my purpose!”
: What do you hope to accomplish with this charter
charter env “Windows 7”
: Add a environment description
charter scenario “Scenario goes here”
or charter s “Scenario goes here”
: Add a scenario
charter bug “This is my bug”
or charter bug -s “My bug”
: Add a bug with or without a screenshot
charter note
: Add a note
charter tag “Login”
: Add a tag to the charter
charter finish
or charter finish -e
: Remove any remaining placeholders and optionally export the charter in HTML
charter find Login
: Find all charters with a given tag
See an example charter here