Shoma Gujjar
Jan 29, 2016
visibility 4980
star star star star star star
(2 votes)

Pickles : Living documentation generator

Recently there came a requirement from the business,they wanted to know a high level view of the specification/requirements of an Project. A colleague suggested that feature files written in gherkin statements where ideal for this purpose.

Therefore we had to look for a tool that would translate the feature files to a more business-friendly format (word,pdf,html), so that the business could have a look at it at their convenience without having to reach out developers.

There were 2 main tools that suited this requirement namely:

  1. Relish
  2. Pickles

Relish is based on Ruby plus it comes with a subscription fee. They do have a Free plan, but all your projects will be public!

Pickles is open-source and easily installed via nuget. The documentation can be found here. Pickles can be run via commandline, GUI,PowerShell or MSBuild

Sample Example using CommandLine

Pickle supports Html, Dhtml,word,JSON and Excel formats.

Install Pickles in your project:

using nuget console manager : Install-Package Pickles.CommandLine

Open Command Prompt in Administrator mode – > Navigate to your Specs project and execute the below command

..\packages\Pickles.CommandLine.2.3.0\tools\pickles.exe --feature-directory=C:\BitBucket\TestProj.Specs --output-directory=c:\my-features-output --documentation-format=dhtml

where --feature-directory =  is the path to your test project

--output-directory =  path to your output file

--documentation-format =  format of the output (optional) . The default output is html

If you want the output in word format then set --documentation-format=word

Plus

The above command can be copied to a .bat-file.

Pickles can also be integrated into automated build or continuous integration tool like TeamCity.

Jan 29, 2016

Comments

error Please login to comment.
Latest blogs
Composition Over Inheritance: Why Your Content Contract Is Not a Base Class

Inside the structural conformance pattern in SaaS CMS — from server-side inheritance to pipeline governance. A contract in Optimizely SaaS CMS is...

Vipin Banka | Sep 19, 2026

Optimizely Opti ID Integration: Why the API Key Was Missing from the DXP Management Portal

While working on an Optimizely CMS 12 Opti ID integration recently, we ran into an issue that initially appeared to be related to SSO authenticatio...

Madhu | Sep 18, 2026 |

Extending a Contract: What You Can Override

Contracts share fields across content types — but not every field setting can be overridden. Push the same contract onto several components, and CM...

Chirag Khanna | Sep 18, 2026 |

Building a Blazor Server UI Inside the Optimizely CMS 13 Admin Shell

What I learned shipping a Blazor Server UI inside Optimizely CMS 13 — Razor components in a NuGet package, the Blazor hub next to MapContent(),...

Stanisław Szołkowski | Sep 17, 2026 |