Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zeroc0d3/json-postman
JSON (JavaScript Object Notation) Automation Test Case via Postman
https://github.com/zeroc0d3/json-postman
json json-postman json-schema newman postman runner test-automation zeroc0d3 zeroc0d3lab
Last synced: about 2 months ago
JSON representation
JSON (JavaScript Object Notation) Automation Test Case via Postman
- Host: GitHub
- URL: https://github.com/zeroc0d3/json-postman
- Owner: zeroc0d3
- Created: 2016-11-17T07:42:00.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2016-11-19T23:02:01.000Z (about 8 years ago)
- Last Synced: 2024-10-30T03:49:11.293Z (3 months ago)
- Topics: json, json-postman, json-schema, newman, postman, runner, test-automation, zeroc0d3, zeroc0d3lab
- Homepage:
- Size: 150 KB
- Stars: 2
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# json-postman
JSON Automation Test Case via Postman## Abstract
### Why Validate Data as a Separate Step?
* to fail fast
* to avoid data corruption
* to simplify processing code
* to use validation code in tests
### Why JSON (and not XML)?
* as wide adoption as XML
* easier to process and more concise than XML
* dominates web development because of JavaScript### Why Use Schemas?
* declarative
* easier to maintain
* can be understood by non-coders
* no need to write code, third party open-source libraries can be used### Why JSON-Schema?
* the widest adoption among all standards for JSON validation
* very mature (current version is 4, there are proposals for version 5)
* covers a big part of validation scenarios
* uses easy-to-parse JSON documents for schemas
* platform independent
* easily extensible
* 30+ validators for different languages, including 10+ for JavaScript, so no need to code it yourself
### Why Using This Repo (zeroc0d3/json-postman)?
* tested result
* easy to learn from simple to complex condition
* using schema references to validate the response
* using external library PostmanBDD not only TinyValidator (tv4)## Installation
1. Install postman.
2. Install tv4 (Tiny Validator).
* npm install tv4
3. Install ajv (Another JSON Schema Validator).
* npm install ajv
4. Copy & paste the testcase script on tab "test" postman.
5. Done.
## Runner Postman
1. Import the collection in folder "collection", or
2. Download ZeroC0D3 Collection :
https://www.getpostman.com/collections/7f63ef54d405bfe2f1db
3. Click "Runner" button and select the "ZeroC0D3 TestCase API",
4. Click "Start Runner" button.
5. Done.## Using Newman
1. Download test result "ZeroC0D3_Result.json" in folder "collection".
2. Install newman
* npm install -g newman
3. Open your terminal / command,
4. Running newman command
* newman -c ZeroC0D3_Result.json
5. Done.
## References
1. http://blog.getpostman.com/2014/03/07/writing-automated-tests-for-apis-using-postman/
2. http://blog.getpostman.com/2014/04/17/how-to-write-automated-tests-for-apis-with-postman-part-2/
3. https://github.com/geraintluff/tv4
4. http://geraintluff.github.com/tv4/
5. https://github.com/BigstickCarpet/postman-bdd
6. https://spacetelescope.github.io/understanding-json-schema/structuring.html
7. http://chaijs.com/plugins/chai-json-schema/
8. https://code.tutsplus.com/tutorials/validating-data-with-json-schema-part-1--cms-25343
9. https://code.tutsplus.com/tutorials/validating-data-with-json-schema-part-2--cms-25640