Skip to content

Add tags to individual interactions #75

Open
@monch1962

Description

@monch1962

It'd be really handy to have a tags field added to individual Pacts, broadly as follows:

{ ...
  "request": ...,
  "response": ...,
  "tags": ["regression", "JIRA-123", "performance", ...],
  ...
}

A lot of the time I don't need to execute every Pact to test a change, and I want to reuse my Pacts for purposes other than integration testing. This would allow us to select specific subsets of Pacts to execute in certain circumstances. For example, if we want to retest JIRA-123, the above Pact would be one of potentially several selected; if we don't want a full regression run, we might want to exclude this test; if we want this test to be reused as a performance test case, then we can auto-generate JMeter/K6 tests from the Pact, and so on. For negative testing, I might want to tag a Pact as "fuzzable", so I can use security tools to fuzz different fields in the request and ensure that I always get a HTTP 4xx status being returned (rather than a 2xx or 5xx).
Tags themselves should be arbitrarily-named (i.e. not a predefined list), and support multiple tags for each Pact.
Broker could probably add support for this pretty easily, and it'd add a lot of flexibility to how people can use Pact. In particular, it'd let us adapt Pact to our ideal workflows, rather than adapt those workflows to support Pact

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions