# TALOS QA > TALOS QA is an open-source, AI-driven test automation framework for Python, Playwright Web UI, and REST API testing. Designed specifically for AI coding agents and human QA engineers, featuring 12 AST Quality Gates, automated test data cleanup, self-healing Playwright POM, and built-in observability. TALOS QA (https://talos.my.id) adalah framework automation testing modern berbasis Python yang dirancang untuk berkolaborasi dengan AI coding agent (Claude, ChatGPT, Copilot, Cursor). Framework ini menjamin 0% flakiness melalui validasi AST (Abstract Syntax Tree), arsitektur Page Object Model (POM) yang ketat, dan siklus cleanup data otomatis. ## Core Capabilities - **AI-Driven & Agent-Ready**: Built from the ground up to pair with AI coding agents, providing deterministic rules so AI never generates brittle or flaky test code. - **12 AST Quality Gates**: Pre-execution static analysis that rejects arbitrary sleeps (`time.sleep`), missing assertions, hardcoded credentials, duplicate test steps, and improper fixture usage. - **Playwright Web UI Automation**: Robust Page Object Model with auto-waiting, visual regression capture, and isolated browser context lifecycles. - **REST API Testing Engine**: Unified HTTP client with automatic response validation, JSON schema enforcement, and teardown data hygiene. - **Built-in Observability**: Real-time structured logging, HTML reports, and CI/CD ready JUnit/Allure outputs. ## Quick Start ```bash # Clone the repository git clone https://github.com/wisnuwm/talos-qa.git cd talos-qa # Install dependencies with Poetry or pip poetry install # Run automated tests poetry run pytest tests/ -v # Run 12 Quality Gates AST audit poetry run python -m talos.gates.audit ``` ## Documentation & References - [Official Website](https://talos.my.id/): Portal utama TALOS QA Framework. - [Comprehensive Documentation](https://talos.my.id/docs.html): Panduan instalasi, konfigurasi fixture, arsitektur POM, dan CI/CD pipeline. - [12 AST Quality Gates Reference](https://talos.my.id/docs.html#gates): Penjelasan lengkap 12 aturan kualitas AST. - [AI Coding Instructions & Full Specs](https://talos.my.id/llms-full.txt): File konteks teknis komprehensif untuk model AI. - [GitHub Repository](https://github.com/wisnuwm/talos-qa): Source code resmi TALOS QA di GitHub (Author: Wisnu Munawar). ## 12 Quality Gates Summary 1. `G01_NO_HARD_SLEEP`: Larangan penggunaan `time.sleep()`. Wajib gunakan dynamic explicit auto-wait. 2. `G02_MANDATORY_ASSERT`: Setiap test case wajib memiliki minimal satu assertion eksplisit. 3. `G03_NO_HARDCODED_SECRETS`: Larangan token, password, atau secret dalam kode pengujian. 4. `G04_ISOLATED_DATA_CLEANUP`: Data uji harus didaftarkan ke fixture cleanup untuk teardown otomatis. 5. `G05_POM_LOCATOR_STRICTNESS`: Locator hanya boleh didefinisikan di dalam class Page Object, bukan di test runner. 6. `G06_EXPLICIT_TIMEOUTS`: Timeout jaringan dan request harus didefinisikan secara eksplisit. 7. `G07_STRICT_TYPING`: Type hints wajib pada signature fungsi dan helper. 8. `G08_DOCSTRING_STANDARDS`: Setiap test wajib memiliki docstring penjelas skenario dan acceptance criteria. 9. `G09_RESPONSE_VALIDATION`: API response harus divalidasi status code dan skema datanya. 10. `G10_FLAKY_RETRY_GUARD`: Retry hanya diperbolehkan pada network latency yang diizinkan, bukan untuk masking bug. 11. `G11_ENV_VARIABLE_SCOPING`: Variabel konfigurasi harus melalui BaseConfig terisolasi. 12. `G12_PARALLEL_SAFE`: Test case harus stateless dan aman dijalankan secara paralel (`pytest -n auto`).