All Projects → scanapi → Scanapi

scanapi / Scanapi

Licence: mit
Automated Integration Testing and Live Documentation for your API

Programming Languages

python
139335 projects - #7 most used programming language
python3
1442 projects

Projects that are alternatives of or similar to Scanapi

Templates
Templates created by The Good Docs Project - for all your tech writing needs.
Stars: ✭ 334 (-2.62%)
Mutual labels:  hacktoberfest
Buttercup Core
🎩 The mighty NodeJS password vault
Stars: ✭ 340 (-0.87%)
Mutual labels:  hacktoberfest
Provider
InheritedWidgets, but simple
Stars: ✭ 3,988 (+1062.68%)
Mutual labels:  hacktoberfest
Jhipster Kotlin
Kotlin based JHipster
Stars: ✭ 339 (-1.17%)
Mutual labels:  hacktoberfest
Carbon Components Vue
Vue implementation of the Carbon Design System
Stars: ✭ 339 (-1.17%)
Mutual labels:  hacktoberfest
Pug
Pug template engine for PHP
Stars: ✭ 341 (-0.58%)
Mutual labels:  hacktoberfest
Kotlin Telegram Bot
🤖 A wrapper for the Telegram Bot API written in Kotlin
Stars: ✭ 337 (-1.75%)
Mutual labels:  hacktoberfest
Drizzle
Reactive Ethereum dapp UI suite
Stars: ✭ 337 (-1.75%)
Mutual labels:  hacktoberfest
Choosenim
Tool for easily installing and managing multiple versions of the Nim programming language.
Stars: ✭ 338 (-1.46%)
Mutual labels:  hacktoberfest
Bagisto
An easy to use, free and open source laravel eCommerce platform to build your online shop in no time.
Stars: ✭ 4,140 (+1107%)
Mutual labels:  hacktoberfest
Isahc
The practical HTTP client that is fun to use.
Stars: ✭ 338 (-1.46%)
Mutual labels:  hacktoberfest
Ruby rbenv
Development repository for the ruby_rbenv cookbook
Stars: ✭ 339 (-1.17%)
Mutual labels:  hacktoberfest
Atlantis
Terraform Pull Request Automation
Stars: ✭ 4,236 (+1134.99%)
Mutual labels:  hacktoberfest
Console Feed
Captures console.log's into a React Component 🔥
Stars: ✭ 337 (-1.75%)
Mutual labels:  hacktoberfest
Antennapod
A podcast manager for Android
Stars: ✭ 3,935 (+1047.23%)
Mutual labels:  hacktoberfest
Youtube Api
📹 A Node.JS module, which provides an object oriented wrapper for the YouTube v3 API.
Stars: ✭ 338 (-1.46%)
Mutual labels:  hacktoberfest
Nameless
NamelessMC is a free, easy to use & powerful website software for your Minecraft server, which includes a large range of features.
Stars: ✭ 337 (-1.75%)
Mutual labels:  hacktoberfest
Discordia
Discord API library written in Lua for the Luvit runtime environment
Stars: ✭ 340 (-0.87%)
Mutual labels:  hacktoberfest
Ccxws
WebSocket client for 38 cryptocurrency exchanges
Stars: ✭ 341 (-0.58%)
Mutual labels:  hacktoberfest
Ruby Build
Compile and install Ruby
Stars: ✭ 3,541 (+932.36%)
Mutual labels:  hacktoberfest

CircleCI Codecov PyPI version Join the community on Spectrum

A library for your API that provides:

  • Automated Integration Testing
  • Automated Live Documentation

Given an API specification, written in YAML/JSON format, ScanAPI hits the specified endpoints, runs the test cases, and generates a detailed report of this execution - which can also be used as the API documentation itself.

With almost no Python knowledge, the user can define endpoints to be hit, the expected behavior for each response and will receive a full real-time diagnostic report of the API!

Contents

Requirements

How to install

$ pip install scanapi

Basic Usage

You will need to write the API's specification and save it as a YAML or JSON file. For example:

endpoints:
  - name: scanapi-demo # The API's name of your API
    path: http://demo.scanapi.dev/api/ # The API's base url
    requests:
      - name: list_all_devs # The name of the first request
        path: devs/ # The path of the first request
        method: get # The HTTP method of the first request
        tests:
          - name: status_code_is_200 # The name of the first test for this request
            assert: ${{ response.status_code == 200 }} # The assertion

And run the scanapi command

$ scanapi run <file_path>

Then, the lib will hit the specified endpoints and generate a scanapi-report.html file with the report results.

An overview screenshot of the report. A screenshot of the report showing the request details. A screenshot of the report showing the response and test details

Documentation

The full documentation is available at scanapi.dev

Examples

You can find complete examples at scanapi/examples!

This tutorial helps you to create integration tests for your REST API using ScanAPI

Watch the video

Contributing

Collaboration is super welcome! We prepared the Newcomers Guide to help you in the first steps. Every little bit of help counts! Feel free to create new GitHub issues and interact here.

Let's build it together 🚀

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].