API Test Automation
- Assertible API tests create tests automatically from your OpenAPI or Swagger spec.
A linter or lint refers to tools that analyze source code to flag programming errors, bugs, stylistic errors, and suspicious constructs
- Speccy ensures a specification is valid against OpenAPI v3
- oas-kit an open source utility for converting Swagger 2.0 definitions to OpenAPI 3.0, and validating and linting such documents.
- zally open source tool for linting APIs against OpenAPI v2 and v3. Out-of-the-box, zally will validate APIs against Zalando’s REST guidelines, however, this can be reconfigured if necessary.
A key aspect of Spectral, the linter developed by Stoplight, is its flexibility. Spectral allows you to create custom rules to lint JSON objects. Such rules can be developed to apply to certain parts of the JSON objects. Though customization is possible, Spectral can leverage existing rulesets to validate and lint OpenAPI versions 2 and 3. The two main components of Spectral are rules and functions, which effectively generate a “flexible and customizable style guide for your JSON objects.”
- openapi-lint Openapi-lint provides a method to convert between OpenAPI v2 and v3, and offers an ability to validate and lint OpenAPI 3.0.x documents. Openapi-lint is a helpful extension for Microsoft Visual Studio (VS) users, as it comes pre-configured with VS commands.
- openapilint Developed by Braintree, openapilint is an open source utility that uses Node.js to validate APIs against the OpenAPI Specification standard. It takes a JSON object or schema as input, analyzes it against this default set of rules, and responds with useful error messages. Though openapilint shares some qualities with other JSON schema validators, it purportedly goes “above and beyond those validators by targeting the common OpenAPI-specific problems.”
- OpenAPI Spec validator Written in Python, the OpenAPI Spec validator library validates an OpenAPI spec for both v2 and v3. It can validate a spec directly or by specifying a URL. The tool is developed by Artur Maciag and released under Apache v2.
- oval Developers that want a simple, programmatic OpenAPI spec validation tool will enjoy oval, a utility maintained by Jeremy Whitlock of Google. It’s built on top of Sway and provides comprehensive OAS coverage. “Plans for oval are to provide an eslint-like experience for OAS validation in the future.”
API Clients for testing APIs
- curl https://curl.haxx.se/
- wget https://www.gnu.org/software/wget/
- REST client https://extendsclass.com/
- SOAP client https://extendsclass.com/
API Mocks to test API Clients
Test your clients by sending a request to this URL allows analyzing what comes out on server side
- Create a Mock REST API http://requestb.in
- Create a Mock REST API https://extendsclass.com/
Base64 encode/decode http://www.base64encode.org
URL encode/decode http://meyerweb.com/eric/tools/dencoder/
- XML escape/unescape http://www.escapehtmlforxml.com/
- check the validity of JSON http://jsonlint.com/
- check the validity of JSON https://extendsclass.com/
- check JSON against Schema, validate JSON Schema http://jsonschemalint.com/
- check JSON against Schema, validate JSON Schema http://jsonschemavalidator.herokuapp.com/
- JSONPath Tester https://extendsclass.com/
- JSON Diff https://extendsclass.com/
- convert JSON <-> XML http://www.utilities-online.info/xmltojson/
- convert JSON <-> XML https://extendsclass.com/xml-to-json.html
- convert JSON <-> CSV https://extendsclass.com/json-to-csv.html