Licence
MIT
Version
0.12.0
Deps
0
Size
20.9 MB
Vulns
0
Weekly
0
Install scriptsThis package runs scripts during installation (preinstall/install/postinstall)
@openapi-testgen/cli
Generate test cases from OpenAPI specifications to validate API contract compliance.
Installation
# Global installation
npm install -g @openapi-testgen/cli
# Run directly with npx
npx @openapi-testgen/cli --help
# Project dependency
npm install --save-dev @openapi-testgen/cli
Requirements
The package supports two execution modes:
Native Binary (Recommended)
Native binaries are automatically used when available for your platform:
| Platform | Package | Requirements |
|---|---|---|
| Linux x64 | @openapi-testgen/cli-linux-x64 |
Any Linux (static binary) |
| Linux ARM64 | @openapi-testgen/cli-linux-arm64 |
glibc-based Linux; auto JAR fallback on musl |
| macOS ARM64 | @openapi-testgen/cli-darwin-arm64 |
macOS 11+ |
| Windows x64 | @openapi-testgen/cli-win32-x64 |
Windows 10+ |
Native packages are installed as optional dependencies. No Java required.
JAR Fallback
If no native binary is available for your platform, the CLI falls back to the JAR-based distribution:
- Requires: Java 21 or later
- Works on: Any platform with Java support
Quick Start
Generate Rest-Assured Java tests:
openapi-testgen \
--spec-file openapi.yaml \
--output-dir ./generated-tests \
--generator template \
--generator-option templateSet=restassured-java \
--generator-option templateVariables.package=com.example.generated \
--generator-option templateVariables.baseUrl=http://localhost:8080
Generate JSON test suites:
openapi-testgen \
--spec-file openapi.yaml \
--output-dir ./test-data \
--generator test-suite-writer \
--generator-option outputFileName=tests.json
Usage in package.json
{
"scripts": {
"generate-tests": "openapi-testgen --spec-file api.yaml --output-dir tests --generator test-suite-writer --generator-option outputFileName=test-suites.json"
}
}
Options
| Option | Description |
|---|---|
--spec-file |
Path to OpenAPI spec (required unless in config) |
--output-dir |
Output directory (required unless in config) |
--generator |
Generator: template or test-suite-writer |
--generator-option |
Generator option (repeatable): key=value |
--config-file |
YAML configuration file |
--setting |
Test generation setting (repeatable): key=value |
--always-write-test |
Write output even on errors |
--log-level |
TRACE, DEBUG, INFO, WARN, ERROR, OFF |
--prefer-jar |
Force JAR execution (skip native binary) |
--help |
Show help |
--version |
Show version |
Configuration File
specFile: "openapi.yaml"
outputDir: "./generated"
generator: "template"
generatorOptions:
templateSet: "restassured-java"
templateVariables:
package: "com.example.tests"
baseUrl: "http://localhost:8080"
testGenerationSettings:
maxTestCasesPerOperation: 500
validSecurityValues:
ApiKeyAuth: "test-key"
openapi-testgen --config-file config.yaml
Documentation
License
MIT