nikolay-e/autoqa
GitHub: nikolay-e/autoqa
自动化部署后质量保证工具,集成多工具链解决发布前后端到端质量与安全问题。
Stars: 0 | Forks: 0
# AutoQA
自动化部署后质量保证,作为可复用的 GitHub Action。
## 工具
| 工具 | 功能 | 依赖 |
|------|-------------|----------|
| **Playwright Crawler** | 爬取页面、检查 JS 错误、断链、axe 可访问性(WCAG2a/2aa) | Node.js |
| **Schemathesis** | 基于 OpenAPI 规范的属性 API 模糊测试 | Python、OpenAPI 规范 |
| **OWASP ZAP** | 基于 OpenAPI 规范的动态安全扫描 | Docker、OpenAPI 规范 |
每个工具均为可选,按需启用。
## 快速开始
```
# .github/workflows/post-deploy.yml
jobs:
qa:
runs-on: ubuntu-latest
steps:
- uses: nikolay-e/autoqa@main
with:
url: https://your-app.com
```
## 示例
### 仅爬取的静态站点
```
- uses: nikolay-e/autoqa@main
with:
url: https://example.com
crawler-seed-pages: '/,/about,/blog'
crawler-max-pages: '30'
```
### 包含登录、API 模糊测试与安全扫描的应用
```
- uses: nikolay-e/autoqa@main
with:
url: https://your-app.com
auth-url: /api/auth/login
auth-body: '{"username":"test","password":"${{ secrets.QA_PASSWORD }}"}'
crawler-username: test
crawler-password: ${{ secrets.QA_PASSWORD }}
crawler-seed-pages: '/,/dashboard,/settings'
schemathesis-enabled: 'true'
openapi-url: /api/openapi.json
zap-enabled: 'true'
```
## 输入
请参阅 [`action.yml`](action.yml) 获取所有可用输入及其默认值。
## 报告
所有工具将报告写入 `/tmp/qa-reports/` 并作为 `autoqa-reports` 构件上传(保留 7 天)。
## 许可证
MIT
标签:API模糊测试, Axe可访问性, GitHub Action, JavaScript错误检测, MITM代理, OpenAPI规范, OWASP ZAP, Playwright, Schemathesis, WCAG2a, WCAG2aa, 前端爬虫, 动态安全扫描, 可重用组件, 安全漏洞扫描, 属性测试, 断链检测, 特权提升, 自动化QA, 自动化部署, 自定义脚本, 请求拦截, 质量保证, 逆向工具