Skip to main content

Linter for Gherkin feature files

Project description

gherlint

Linter for Gherkin feature files, written in Python

Install

Simply run pip install gherlint.

Linting Feature Files

gherlint comes with a command line interface. To recursively lint all feature files in a directory, run gherlint lint.

Computing Metrics

gherlint can also create some metrics for you if you want to know how many features, scenarios and steps you have in your test suite. To do so, run gherlint stats.

Disclaimer

gherlint is still in an early development phase. New checks will be added over time. If you want to contribute, feel free to open issues suggesting useful checkers, or open a pull request if you want to!

Roadmap

The following work items are planned for the upcoming releases:

  • V0.0.x - V0.1.0:
    • Parser and object model for feature files
    • Basic checkers to demonstrate workflow
    • Basic text based reporter
  • V0.1.x - V1.0: <-- we are here
    • Add more checkers
    • Add more output formats
    • Extend object model as necessary for checkers
    • Reach a stable interface for object model, checkers and reporters
  • V1.x - V2.0:
    • Support configuration to enable/disable individual messages
    • Implement plugin architecture to allow users to add custom checkers

CHANGELOG

V0.3.0

New checks:

  • missing-language-tag
  • wrong-language-tag
  • unparseable-file

Other changes:

  • gherlint can now automatically detect the language used and make sure that it can parse the files even without a # language token present.

V0.2.0

New checks:

  • missing-given-step
  • missing-when-step
  • missing-then-step
  • empty-scenario
  • empty-feature
  • file-has-no-feature
  • missing-parameter

Other changes:

  • Support for Background
  • Determination of step type independent of language
  • Distinction between Scenario and Scenario Outline independent of language

V0.1.0

First package in alpha status:

  • Parser and object model for feature files
  • Basic checkers to demonstrate workflow
  • Basic text based reporter

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gherlint-0.3.0.tar.gz (11.4 kB view details)

Uploaded Source

Built Distribution

gherlint-0.3.0-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file gherlint-0.3.0.tar.gz.

File metadata

  • Download URL: gherlint-0.3.0.tar.gz
  • Upload date:
  • Size: 11.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.11 CPython/3.9.7 Linux/5.8.0-1042-azure

File hashes

Hashes for gherlint-0.3.0.tar.gz
Algorithm Hash digest
SHA256 06bab3a7d8a1b5604a964711a9e22c7e455894d6e863852622c3c79b124e3d5b
MD5 2828f2c4df1f6b90b0c4f1dd33adb7a4
BLAKE2b-256 a450a5bb3b1d963e67e6f08bfd4bb6c75f02ce2d39fd59200d3e8f852a7b8b4c

See more details on using hashes here.

File details

Details for the file gherlint-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: gherlint-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 13.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.11 CPython/3.9.7 Linux/5.8.0-1042-azure

File hashes

Hashes for gherlint-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b198626638fc22dc3306b939018647f61b30ef9923a4f68f2456c69ef4074d64
MD5 1640c27549ad41a6229b9161019c00e1
BLAKE2b-256 c92451cf9d5691933b7fd2cd1795eca1b6cd2526e104cd3288ce4b3e03ea6dbb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page