Name | sdk-pytest-checkmate JSON |
Version |
0.4.0a3
JSON |
| download |
home_page | None |
Summary | Advanced pytest-based testing framework for QA engineers and test automation specialists. |
upload_time | 2025-08-28 23:39:38 |
maintainer | None |
docs_url | None |
author | None |
requires_python | <3.14,>=3.10 |
license | MIT License Copyright (c) 2025 o73k51i Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
keywords |
api-testing
async-testing
automation-framework
environment-management
epic-story
html-reports
http-client
json-schema
pytest
qa
quality-assurance
soft-assertions
test-automation
test-framework
test-organization
test-reporting
test-steps
test-validation
testing
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# sdk-pytest-checkmate
[](https://pypi.org/project/sdk-pytest-checkmate/)
[](https://www.python.org/)
[](https://opensource.org/licenses/MIT)
**A powerful SDK for testing specialists** - advanced pytest-based testing
framework with structured test steps, soft assertions, automatic HTTP logging,
and interactive HTML reports.
## 🎯 Who Is This For?
- **🔧 QA Engineers** - Software quality assurance specialists
- **🤖 Test Automation Engineers** - Test automation specialists
- **👨💻 Developers** - Writing unit and integration tests
- **📋 Test Leads** - Team leaders requiring detailed reporting
## 🌟 Key Features
- 📝 **Structured test steps** - Organize tests into logical, timed blocks
- 🔍 **Soft assertions** - Collect all errors without stopping test execution
- 🌐 **Automatic HTTP reporting** - Track all API requests and responses seamlessly
- 📊 **Interactive HTML reports** - Rich reports with filtering and detailed analysis
- 🔄 **Full async support** - Works with both synchronous and asynchronous tests
- 🛡️ **JSON schema validation** - Validate API responses with soft assertions
- 📋 **Epic/Story organization** - Group tests hierarchically for better management
- 🌍 **Environment management** - Automatic .env file loading and configuration
## 🚀 Quick Start
Installation:
```bash
pip install sdk-pytest-checkmate
```
Create a test file:
```python
import pytest
from sdk_pytest_checkmate import step, soft_assert, HttpClient, add_data_report
@pytest.mark.epic("User Management")
@pytest.mark.story("Authentication")
@pytest.mark.title("User Login Flow")
def test_user_login():
"""Complete user login test with SDK pytest checkmate"""
client = HttpClient(base_url="https://api.example.com")
with step("Prepare login credentials"):
credentials = {"username": "testuser", "password": "secure123"}
add_data_report(credentials, "Login Data")
with step("Attempt user login"):
response = client.post("/auth/login", json=credentials)
soft_assert(response.status_code == 200, "Login should be successful")
soft_assert("token" in response.json(), "Response should contain access token")
with step("Verify user session"):
profile_response = client.get(
"/user/profile",
headers={"Authorization": f"Bearer {response.json()['token']}"}
)
soft_assert(profile_response.status_code == 200, "Profile should be accessible")
add_data_report(profile_response.json(), "User Profile")
```
Generate your first report:
```bash
pytest --report-html=report.html
```
## 📖 SDK API Functions
- `step(name: str)` - Context manager for creating steps
- `soft_assert(condition, message, details)` - Soft assertion
- `add_data_report(data, label)` - Add data to report
- `HttpClient(base_url, **kwargs)` - HTTP client
- `AsyncHttpClient(base_url, **kwargs)` - Asynchronous HTTP client
- `soft_validate_json(data, schema, schema_path, strict)` - JSON data validation
## 📖 Command Line Options
- `--report-html[=PATH]` - Generate HTML report
- `--report-title=TITLE` - Custom report title
- `--report-json=PATH` - Export JSON results
- `--env-file=PATH` - Load environment variables
## 📖 Complete Documentation
For comprehensive guides and advanced usage:
- **[📦 Installation Guide](./docs/installation.md)** - Setup and requirements
- **[🎯 Features Overview](./docs/features.md)** - Complete API reference
- **[📊 Reports Guide](./docs/reports.md)** - HTML report features
- **[⚙️ Configuration](./docs/configuration.md)** - Settings and options
- **[❓ FAQ](./docs/faq.md)** - Common questions and troubleshooting
## 🤝 Contributing & Support
- 📖 **[Report Issues](https://github.com/o73k51i/sdk-pytest-checkmate/issues)** - Bug reports and feature requests
- 📖 **[Discussions](https://github.com/o73k51i/sdk-pytest-checkmate/discussions)** - Questions and community support
- 📖 **[Documentation](./docs/main.md)** - Complete documentation index
## 📄 License
MIT License - see [LICENSE](LICENSE) file for details.
---
**Built for testing specialists who demand quality, clarity, and comprehensive reporting.** 🚀
Raw data
{
"_id": null,
"home_page": null,
"name": "sdk-pytest-checkmate",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.14,>=3.10",
"maintainer_email": null,
"keywords": "api-testing, async-testing, automation-framework, environment-management, epic-story, html-reports, http-client, json-schema, pytest, qa, quality-assurance, soft-assertions, test-automation, test-framework, test-organization, test-reporting, test-steps, test-validation, testing",
"author": null,
"author_email": "o73k51i <o73k51i@proton.me>",
"download_url": "https://files.pythonhosted.org/packages/f1/a3/5be26ff8c002bf81470ab79d39eca596f4b8b4eb6060a3994c8f544f790d/sdk_pytest_checkmate-0.4.0a3.tar.gz",
"platform": null,
"description": "# sdk-pytest-checkmate\n\n[](https://pypi.org/project/sdk-pytest-checkmate/)\n[](https://www.python.org/)\n[](https://opensource.org/licenses/MIT)\n\n**A powerful SDK for testing specialists** - advanced pytest-based testing\nframework with structured test steps, soft assertions, automatic HTTP logging,\nand interactive HTML reports.\n\n## \ud83c\udfaf Who Is This For?\n\n- **\ud83d\udd27 QA Engineers** - Software quality assurance specialists\n- **\ud83e\udd16 Test Automation Engineers** - Test automation specialists \n- **\ud83d\udc68\u200d\ud83d\udcbb Developers** - Writing unit and integration tests\n- **\ud83d\udccb Test Leads** - Team leaders requiring detailed reporting\n\n## \ud83c\udf1f Key Features\n\n- \ud83d\udcdd **Structured test steps** - Organize tests into logical, timed blocks\n- \ud83d\udd0d **Soft assertions** - Collect all errors without stopping test execution\n- \ud83c\udf10 **Automatic HTTP reporting** - Track all API requests and responses seamlessly\n- \ud83d\udcca **Interactive HTML reports** - Rich reports with filtering and detailed analysis\n- \ud83d\udd04 **Full async support** - Works with both synchronous and asynchronous tests\n- \ud83d\udee1\ufe0f **JSON schema validation** - Validate API responses with soft assertions\n- \ud83d\udccb **Epic/Story organization** - Group tests hierarchically for better management\n- \ud83c\udf0d **Environment management** - Automatic .env file loading and configuration\n\n## \ud83d\ude80 Quick Start\n\nInstallation:\n\n```bash\npip install sdk-pytest-checkmate\n```\n\nCreate a test file:\n\n```python\nimport pytest\nfrom sdk_pytest_checkmate import step, soft_assert, HttpClient, add_data_report\n\n@pytest.mark.epic(\"User Management\")\n@pytest.mark.story(\"Authentication\")\n@pytest.mark.title(\"User Login Flow\")\ndef test_user_login():\n \"\"\"Complete user login test with SDK pytest checkmate\"\"\"\n client = HttpClient(base_url=\"https://api.example.com\")\n \n with step(\"Prepare login credentials\"):\n credentials = {\"username\": \"testuser\", \"password\": \"secure123\"}\n add_data_report(credentials, \"Login Data\")\n \n with step(\"Attempt user login\"):\n response = client.post(\"/auth/login\", json=credentials)\n soft_assert(response.status_code == 200, \"Login should be successful\")\n soft_assert(\"token\" in response.json(), \"Response should contain access token\")\n \n with step(\"Verify user session\"):\n profile_response = client.get(\n \"/user/profile\", \n headers={\"Authorization\": f\"Bearer {response.json()['token']}\"}\n )\n soft_assert(profile_response.status_code == 200, \"Profile should be accessible\")\n add_data_report(profile_response.json(), \"User Profile\")\n```\n\nGenerate your first report:\n\n```bash\npytest --report-html=report.html\n```\n\n## \ud83d\udcd6 SDK API Functions\n\n- `step(name: str)` - Context manager for creating steps\n- `soft_assert(condition, message, details)` - Soft assertion\n- `add_data_report(data, label)` - Add data to report\n- `HttpClient(base_url, **kwargs)` - HTTP client\n- `AsyncHttpClient(base_url, **kwargs)` - Asynchronous HTTP client\n- `soft_validate_json(data, schema, schema_path, strict)` - JSON data validation\n\n\n## \ud83d\udcd6 Command Line Options\n\n- `--report-html[=PATH]` - Generate HTML report\n- `--report-title=TITLE` - Custom report title \n- `--report-json=PATH` - Export JSON results\n- `--env-file=PATH` - Load environment variables\n\n## \ud83d\udcd6 Complete Documentation\n\nFor comprehensive guides and advanced usage:\n\n- **[\ud83d\udce6 Installation Guide](./docs/installation.md)** - Setup and requirements\n- **[\ud83c\udfaf Features Overview](./docs/features.md)** - Complete API reference\n- **[\ud83d\udcca Reports Guide](./docs/reports.md)** - HTML report features\n- **[\u2699\ufe0f Configuration](./docs/configuration.md)** - Settings and options\n- **[\u2753 FAQ](./docs/faq.md)** - Common questions and troubleshooting\n\n## \ud83e\udd1d Contributing & Support\n\n- \ud83d\udcd6 **[Report Issues](https://github.com/o73k51i/sdk-pytest-checkmate/issues)** - Bug reports and feature requests\n- \ud83d\udcd6 **[Discussions](https://github.com/o73k51i/sdk-pytest-checkmate/discussions)** - Questions and community support\n- \ud83d\udcd6 **[Documentation](./docs/main.md)** - Complete documentation index\n\n## \ud83d\udcc4 License\n\nMIT License - see [LICENSE](LICENSE) file for details.\n\n---\n\n**Built for testing specialists who demand quality, clarity, and comprehensive reporting.** \ud83d\ude80\n",
"bugtrack_url": null,
"license": "MIT License Copyright (c) 2025 o73k51i Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.",
"summary": "Advanced pytest-based testing framework for QA engineers and test automation specialists.",
"version": "0.4.0a3",
"project_urls": {
"Bug Tracker": "https://github.com/o73k51i/sdk-pytest-checkmate/issues",
"Documentation": "https://github.com/o73k51i/sdk-pytest-checkmate/blob/main/docs/main.md",
"Homepage": "https://github.com/o73k51i/sdk-pytest-checkmate",
"Repository": "https://github.com/o73k51i/sdk-pytest-checkmate.git"
},
"split_keywords": [
"api-testing",
" async-testing",
" automation-framework",
" environment-management",
" epic-story",
" html-reports",
" http-client",
" json-schema",
" pytest",
" qa",
" quality-assurance",
" soft-assertions",
" test-automation",
" test-framework",
" test-organization",
" test-reporting",
" test-steps",
" test-validation",
" testing"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "f3e28caa7b0f921d7ac1d4be100a2943b0b55367a7ea6fe8a111669ecfb927a0",
"md5": "de820b1c3013f04e7794ef5d8fe0f059",
"sha256": "f0d1136aa210dfadcd9a1c5bd637eb6a26b339db53103b06600707cfac654b73"
},
"downloads": -1,
"filename": "sdk_pytest_checkmate-0.4.0a3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "de820b1c3013f04e7794ef5d8fe0f059",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.14,>=3.10",
"size": 29242,
"upload_time": "2025-08-28T23:39:37",
"upload_time_iso_8601": "2025-08-28T23:39:37.563203Z",
"url": "https://files.pythonhosted.org/packages/f3/e2/8caa7b0f921d7ac1d4be100a2943b0b55367a7ea6fe8a111669ecfb927a0/sdk_pytest_checkmate-0.4.0a3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "f1a35be26ff8c002bf81470ab79d39eca596f4b8b4eb6060a3994c8f544f790d",
"md5": "51b387ad1fb442e84a7d3ed3292d4c86",
"sha256": "184deeff236337cd03f7315faa55be8820eb16431a8a5a8f03e1405d3c18d98e"
},
"downloads": -1,
"filename": "sdk_pytest_checkmate-0.4.0a3.tar.gz",
"has_sig": false,
"md5_digest": "51b387ad1fb442e84a7d3ed3292d4c86",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.14,>=3.10",
"size": 60729,
"upload_time": "2025-08-28T23:39:38",
"upload_time_iso_8601": "2025-08-28T23:39:38.967316Z",
"url": "https://files.pythonhosted.org/packages/f1/a3/5be26ff8c002bf81470ab79d39eca596f4b8b4eb6060a3994c8f544f790d/sdk_pytest_checkmate-0.4.0a3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-28 23:39:38",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "o73k51i",
"github_project": "sdk-pytest-checkmate",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "sdk-pytest-checkmate"
}