https://github.com/authorjapps/zerocode
zerocode-tdd is a community-developed, free, open-source, automated testing lib for microservices APIs, Kafka(Data Streams), Databases and Load testing. It enables you to create executable automated test scenarios via simple JSON or YAML — no coding required.
https://github.com/authorjapps/zerocode
api api-contract assertions automation automation-framework consumer declarative dsl framework http java json kafka library low-code no-code-framework nocode soap testing
Last synced: 27 days ago
JSON representation
zerocode-tdd is a community-developed, free, open-source, automated testing lib for microservices APIs, Kafka(Data Streams), Databases and Load testing. It enables you to create executable automated test scenarios via simple JSON or YAML — no coding required.
- Host: GitHub
- URL: https://github.com/authorjapps/zerocode
- Owner: authorjapps
- License: apache-2.0
- Created: 2016-07-05T13:43:44.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2025-10-04T08:20:16.000Z (about 1 month ago)
- Last Synced: 2025-10-20T15:54:20.560Z (27 days ago)
- Topics: api, api-contract, assertions, automation, automation-framework, consumer, declarative, dsl, framework, http, java, json, kafka, library, low-code, no-code-framework, nocode, soap, testing
- Language: Java
- Homepage: https://zerocode-tdd.tddfy.com
- Size: 4.75 MB
- Stars: 983
- Watchers: 70
- Forks: 438
- Open Issues: 123
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-list-for-developers - zerocode - first-issue)_ <br> Automação de API sem codificação, assertivas fáceis de resposta JSON, teste de APIs REST, SOAP, Kafka e Java/DB, amigável ao CI/Jenkins. (Java / Misc)
- awesome-java - ZeroCode
README
Zerocode
===
A no-code automated testing framework for Data streams(Kafka), microservices APIs, and databases using JSON.
[](https://github.com/authorjapps/zerocode/wiki/What-is-Zerocode-Testing)
[](https://github.com/authorjapps/zerocode/wiki/Load-or-Performance-Testing-(IDE-based))
[](https://zerocode-tdd.tddfy.com/kafka/Kafka-Testing-Introduction)
**Latest release:🏹** [](https://maven-badges.herokuapp.com/maven-central/org.jsmart/zerocode-tdd/)
**CI Testing:** 
**Issue Discussions:** [Slack](https://join.slack.com/t/zerocode-workspace/shared_invite/enQtNzYxMDAwNTQ3MjY1LTA2YmJjODJhNzQ4ZjBiYTQwZDBmZmNkNmExYjA3ZDk2OGFiZWFmNWJlNGRkOTdiMDQ4ZmQyNzcyNzVjNWQ4ODQ)
**Mailing List:** [Mailing List](https://groups.google.com/forum/#!forum/zerocode-automation)
**License:** [Apache 2.0](http://www.apache.org/licenses/LICENSE-2.0)
Zerocode makes it easy to create and maintain automated tests with absolute minimum overhead for [REST](https://github.com/authorjapps/zerocode/wiki/User-journey:-Create,-Update-and-GET-Employee-Details),[SOAP](https://github.com/authorjapps/zerocode/blob/master/README.md#soap-method-invocation-example-with-xml-input), [Kafka Real Time Data Streams](https://github.com/authorjapps/zerocode/wiki/Kafka-Testing-Introduction) and much more.
It has the best of best ideas and practices from the community to keep it super simple, and the adoption is rapidly growing among the developers & testers community.
Documentation
===
Visit here :
+ [Documentation](https://zerocode-tdd.tddfy.com) - Indexed & instantly finds you the results
+ Want to amend or improve any documentation? Steps and guidelines are [here](https://github.com/authorjapps/zerocode/wiki/Documentation-Steps)
IDE Support By
===
[
](https://www.jetbrains.com/idea/)
Maven Dependency
===
+ [New releases - zerocode-tdd](https://maven-badges.herokuapp.com/maven-central/org.jsmart/zerocode-tdd/)
[](https://maven-badges.herokuapp.com/maven-central/org.jsmart/zerocode-tdd/)
+ _[Older releases - zerocode-rest-bdd](https://maven-badges.herokuapp.com/maven-central/org.jsmart/zerocode-rest-bdd/)_
[](https://maven-badges.herokuapp.com/maven-central/org.jsmart/zerocode-rest-bdd/)
Introduction
===
Zerocode is a modern, lightweight, and extensible open-source framework designed for writing executable test scenarios using simple JSON or YAML formats. It supports both declarative configuration and automation, making it user-friendly and efficient.
In essence, Zerocode simplifies the complexities of modern API and data-streaming automation, including Kafka. The framework seamlessly handles response validations, target API invocations, load/stress testing, and security testing, all through straightforward YAML/JSON/Fluent steps.
For example, if your REST API URL `https://localhost:8080/api/v1/customers/123` with `GET` method and `"Content-Type": "application/json"` returns the following payload and a `http` status code `200(OK)` ,
```javaScript
Response:
{
"id": 123,
"type": "Premium High Value",
"addresses": [
{
"type":"home",
"line1":"10 Random St"
}
]
}
```
then, we can easily validate the above API using `Zerocode` like below.
+ Using JSON
```JSON
{
"url": "api/v1/customers/123",
"method": "GET",
"request": {
"headers": {
"Content-Type": "application/json"
}
},
"retry": {
"max": 3,
"delay": 1000
},
"verify": {
"status": 200,
"headers": {
"Content-Type" : [ "application/json; charset=utf-8" ]
},
"body": {
"id": 123,
"type": "Premium Visa",
"addresses": [
{
"type": "Billing",
"line1": "10 Random St"
}
]
}
},
"verifyMode": "LENIENT"
}
```
+ or Using YAML
```yaml
---
url: api/v1/customers/123
method: GET
request:
headers:
Content-Type: application/json
retry:
max: 3
delay: 1000
verify:
status: 200
headers:
Content-Type:
- application/json; charset=utf-8
body:
id: 123
type: Premium Visa
addresses:
- type: Billing
line1: 10 Random St
verifyMode: LENIENT
```
> _The beauty here is, we can use the payload/headers structure for validation as it is without any manipulation
> or
> use a flat JSON path to skip the hassles of the entire object hierarchies._
Looks simple & easy? Why not give it a try? Visit the [quick-start guide](https://zerocode-tdd.tddfy.com/microservices/start)
or
[user's guide](https://github.com/authorjapps/zerocode/wiki#developer-guide) to check out more scenarios.
Zerocode-TDD is used by many companies such as Vocalink, HSBC, HomeOffice(Gov) and [many others](https://github.com/authorjapps/zerocode/wiki#smart-projects-using-zerocode) to achieve accurate production drop of their micro-services, data-pipelines etc.
Also, learn more about [Validators Vs Matchers](https://zerocode-tdd.tddfy.com/assertions/Validators-and-Matchers) here.
Happy Testing! 🐼
🔆 Visit [Documentation](https://zerocode-tdd.tddfy.com) - Indexed, searchable & instantly finds you the results