Skip to content

Add CI smoke test example with GitHub Actions workflow#37

Open
dinalivia wants to merge 1 commit intoscanapi:mainfrom
dinalivia:add-ci-smoke-test-example
Open

Add CI smoke test example with GitHub Actions workflow#37
dinalivia wants to merge 1 commit intoscanapi:mainfrom
dinalivia:add-ci-smoke-test-example

Conversation

@dinalivia
Copy link
Copy Markdown

@dinalivia dinalivia commented Apr 10, 2026

Summary

  • Adds a new ci-smoke-tests/ example showing how to run ScanAPI as a post-deployment smoke test step in GitHub Actions
  • Includes a reusable workflow with workflow_dispatch, workflow_call pattern, and an authenticated API example (commented out)
  • Test spec runs 11 tests against JSONPlaceholder: health check, CRUD endpoints, 404 handling, and request chaining
  • Updates root README with a table listing all examples

Motivation

The existing examples show how to write ScanAPI specs, but none demonstrate a CI integration pattern that teams can copy into their own projects. This fills that gap.

Adds a new example showing how to run ScanAPI as a post-deployment
smoke test step in CI. Includes a reusable GitHub Actions workflow,
a test spec against JSONPlaceholder demonstrating health checks,
endpoint validation, and request chaining, plus documentation for
both local and CI usage.
@dinalivia dinalivia requested a review from a team as a code owner April 10, 2026 13:31
Copy link
Copy Markdown
Member

@camilamaia camilamaia left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks really great, super useful example and very well documented 👏

I have one thought regarding the folder structure and how we organize examples overall.

Right now, most examples follow the pattern of being named after the API (e.g. jsonplaceholder-api, github-api, etc.), but this one is organized by type of usage (ci-smoke-tests). That makes sense for this case, but it introduces a different categorization approach.

I’m wondering if it might be worth standardizing this a bit before we add more examples. For instance, one option could be:

  • Keep ci-smoke-tests/ as the main category (type of test)
  • Inside it, have something like jsonplaceholder-api/ (API-specific example)

So it would look like:

ci-smoke-tests/
  jsonplaceholder-api/

That said, this is definitely not a blocker for me. I’m totally fine merging this as-is and then revisiting the structure later once we align on a consistent approach.

Maybe we can use this PR to discuss and then follow up with a separate PR just to reorganize examples once a decision is made.

Curious to hear your thoughts (and others’) on this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants