Native CLI for gRPC testing with .gctf files.
- Unary, client streaming, server streaming, and bidirectional streaming tests
- Assertions with built-in operators and plugin functions (
@header,@trailer,@uuid,@email, etc.) - Parallel execution, timeouts, coverage, snapshot mode (
--write) - Output formats:
console,json,junit,allure - Extra tools for developer workflows:
check,fmt,inspect,explain,reflect,lsp
- No external runtime dependencies for CLI execution
- Docker is optional (for integration examples)
brew tap gripmock/tap
brew install gripmock/tap/grpctestifycargo install grpctestify- Download from GitHub Releases
- Available for macOS, Linux, and Windows (amd64/arm64)
Verify installation:
grpctestify --version- Create
hello.gctf:
--- ADDRESS ---
localhost:4770
--- ENDPOINT ---
hello.HelloService/SayHello
--- REQUEST ---
{
"name": "World"
}
--- ASSERTS ---
.message == "Hello, World!"
- Run test:
grpctestify hello.gctf# Run tests
grpctestify tests/
# Parallel run
grpctestify tests/ --parallel 4
# JSON report
grpctestify tests/ --log-format json --log-output results.json
# JUnit report
grpctestify tests/ --log-format junit --log-output junit.xml
# Validate syntax
grpctestify check tests/**/*.gctf
# Format files
grpctestify fmt -w tests/**/*.gctfIssues and PRs are welcome: GitHub Issues