# Robot Framework SchemathesisLibrary
Robot Framework SchemathesisLibrary is a library build top of the
[Schemathesis](https://github.com/schemathesis/schemathesis).
Schemathesis automatically generates thousands of test cases from
your OpenAPI or GraphQL schema and finds edge cases that break your
API.
SchemathesisLibrary uses
[DataDriver](https://github.com/Snooz82/robotframework-datadriver)
to create test cases from the Schemathesis
[Case](https://schemathesis.readthedocs.io/en/stable/reference/python/#schemathesis.Case)
object.
# Installation
Install with [pip](https://pypi.org/project/pip/), [uv](https://docs.astral.sh/uv/)
or any package manager that supports PyPi
```bash
pip install robotframework-schemathesislibrary
```
# Keyword documentation
See
[keyword documentation](https://aaltat.github.io/robotframework-schemathesis/SchemathesisLibrary.html)
for more details. A link older keyword documentation can be found from
[versions page](https://aaltat.github.io/robotframework-schemathesis/versions/)
# Usage
Test are automatically generated based your API specification, SchemathesisLibrary uses
DataDriver internally, but you need to create template suite, so that DataDriver is able
to create needed test for your test suite.
SchemathesisLibrary must be imported by `url` or `path` argument, which tell where
the API specification can obtained. As like with Datadriver, there must be
[Test Template](https://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#test-templates)
setting defined. The template keyword must take one argument, usually referred as
`${case}` and the template keyword must call `Call And Validate` keyword with the
`${case}` argument.
Example test suite:
```robotframework
*** Settings ***
Library SchemathesisLibrary url=http://127.0.0.1/openapi.json
Test Template Wrapper
*** Test Cases ***
All Tests # This test is deleted by DataDriver
Wrapper test_case_1
*** Keywords ***
Wrapper
[Arguments] ${case}
Call And Validate ${case}
```
Raw data
{
"_id": null,
"home_page": null,
"name": "robotframework-schemathesislibrary",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10.1",
"maintainer_email": null,
"keywords": "Robot Framework, Schemathesis, API Testing, Test Automation",
"author": null,
"author_email": "Tatu Aalto <aalto.tatu@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/b5/c3/6ab651af12c8c9495897d6c55b0e4f64a129a32879a6c610775274cd6158/robotframework_schemathesislibrary-0.13.0.tar.gz",
"platform": null,
"description": "# Robot Framework SchemathesisLibrary\nRobot Framework SchemathesisLibrary is a library build top of the\n[Schemathesis](https://github.com/schemathesis/schemathesis).\nSchemathesis automatically generates thousands of test cases from\nyour OpenAPI or GraphQL schema and finds edge cases that break your\nAPI.\n\nSchemathesisLibrary uses\n[DataDriver](https://github.com/Snooz82/robotframework-datadriver)\nto create test cases from the Schemathesis\n[Case](https://schemathesis.readthedocs.io/en/stable/reference/python/#schemathesis.Case)\nobject.\n\n# Installation\nInstall with [pip](https://pypi.org/project/pip/), [uv](https://docs.astral.sh/uv/)\nor any package manager that supports PyPi\n\n```bash\npip install robotframework-schemathesislibrary\n```\n\n# Keyword documentation\nSee\n[keyword documentation](https://aaltat.github.io/robotframework-schemathesis/SchemathesisLibrary.html)\nfor more details. A link older keyword documentation can be found from\n[versions page](https://aaltat.github.io/robotframework-schemathesis/versions/)\n\n# Usage\nTest are automatically generated based your API specification, SchemathesisLibrary uses\nDataDriver internally, but you need to create template suite, so that DataDriver is able\nto create needed test for your test suite.\n\nSchemathesisLibrary must be imported by `url` or `path` argument, which tell where\nthe API specification can obtained. As like with Datadriver, there must be\n[Test Template](https://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#test-templates)\nsetting defined. The template keyword must take one argument, usually referred as\n`${case}` and the template keyword must call `Call And Validate` keyword with the\n`${case}` argument.\n\nExample test suite:\n```robotframework\n*** Settings ***\nLibrary SchemathesisLibrary url=http://127.0.0.1/openapi.json\n\nTest Template Wrapper\n\n\n*** Test Cases ***\nAll Tests # This test is deleted by DataDriver\n Wrapper test_case_1\n\n\n*** Keywords ***\nWrapper\n [Arguments] ${case}\n Call And Validate ${case}\n\n```\n",
"bugtrack_url": null,
"license": null,
"summary": "Robot Framework SchemathesisLibrary to automatically create test cases from API specifications.",
"version": "0.13.0",
"project_urls": null,
"split_keywords": [
"robot framework",
" schemathesis",
" api testing",
" test automation"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "a3ca376614455df716f0c78a01a635329d29b468040199eb50f092d70887a558",
"md5": "23839453ca9a295689729801699f1f44",
"sha256": "1470116c1b0a111a3b4a3393acf3e776ccd6cc2c7fc11737b37c3d73832103d1"
},
"downloads": -1,
"filename": "robotframework_schemathesislibrary-0.13.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "23839453ca9a295689729801699f1f44",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10.1",
"size": 9602,
"upload_time": "2025-07-18T05:54:27",
"upload_time_iso_8601": "2025-07-18T05:54:27.139960Z",
"url": "https://files.pythonhosted.org/packages/a3/ca/376614455df716f0c78a01a635329d29b468040199eb50f092d70887a558/robotframework_schemathesislibrary-0.13.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b5c36ab651af12c8c9495897d6c55b0e4f64a129a32879a6c610775274cd6158",
"md5": "4801dc9e3670ea624b66d822b5c17b78",
"sha256": "884c4b28fd78cae0f18df13d69f23798a637f9f2f1fc6b7ebde4c5295c5e13f7"
},
"downloads": -1,
"filename": "robotframework_schemathesislibrary-0.13.0.tar.gz",
"has_sig": false,
"md5_digest": "4801dc9e3670ea624b66d822b5c17b78",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10.1",
"size": 9064,
"upload_time": "2025-07-18T05:54:28",
"upload_time_iso_8601": "2025-07-18T05:54:28.256528Z",
"url": "https://files.pythonhosted.org/packages/b5/c3/6ab651af12c8c9495897d6c55b0e4f64a129a32879a6c610775274cd6158/robotframework_schemathesislibrary-0.13.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-18 05:54:28",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "robotframework-schemathesislibrary"
}