SantiagoGuerra/quality-engineering-ai-lab

GitHub: SantiagoGuerra/quality-engineering-ai-lab

一个以招聘平台为场景的可复现质量工程实验室,涵盖从单元到 E2E、视觉、安全、性能等全层级测试实践与 CI 质量门禁。

Stars: 0 | Forks: 0

# Talent Lab QE [![Main expanded quality](https://static.pigsec.cn/wp-content/uploads/repos/cas/26/2655d79dd7c2db50a6a71428f053c993917f35930bf3ed9690570940517c5547.svg)](https://github.com/SantiagoGuerra/quality-engineering-ai-lab/actions/workflows/main.yml) [![CodeQL](https://static.pigsec.cn/wp-content/uploads/repos/cas/53/539e9a6bf48ad24469a4363bff3aa68124154549e26592783d3d8577f2acbbfc.svg)](https://github.com/SantiagoGuerra/quality-engineering-ai-lab/actions/workflows/codeql.yml) [![OpenSSF Scorecard](https://static.pigsec.cn/wp-content/uploads/repos/cas/8a/8a727a388fe76c72a83ae3fc7dabb52661f5f76338d742193a015180c72fed45.svg)](https://github.com/SantiagoGuerra/quality-engineering-ai-lab/actions/workflows/scorecard.yml) 一个在招聘平台上进行 Quality Engineering 的综合性、本地化且可复现的实验室。包含 React/Vite、Fastify、PostgreSQL、Mailpit 和 Toxiproxy;涵盖单元测试、组件测试、API 测试、集成测试、属性测试、变异测试、E2E 测试、视觉测试、可访问性测试、安全测试和性能测试;提供统一的测试证据、Jira dry-run 以及针对 agents 的 guardrails。 这是一个采用 MIT 许可证发布的教育项目。所有数据、账户和场景均为完全虚构的合成数据。 ## 四个命令快速启动 环境要求:Node `20.19.x`、pnpm `10.34.x` 以及带有 Compose 的 Docker Desktop/Engine。所有账户和数据均为合成数据。 ``` pnpm install --frozen-lockfile pnpm qa:setup pnpm qa:start pnpm qa:smoke ``` 打开 [web](http://localhost:4173)、[OpenAPI](http://localhost:3001/docs) 和 [Mailpit](http://localhost:18025)。推荐用户:`recruiter@talent.test`;本地密码:`QaDemo!2026`。使用 `pnpm qa:down` 关闭。 ## 日常工作 ``` pnpm dev # desarrollo fuera de contenedores; requiere servicios pnpm qa:check # gate rápido antes del PR pnpm qa:reset --seed candidate-creation pnpm qa:report # genera reports/index.html pnpm qa:doctor # diagnóstico completo ``` Seeds(种子数据):`default`、`empty-state`、`candidate-creation`、`candidate-duplicate`、`permission-denied`、`interview-complete`、`performance-data` 和 `accessibility-review`。使用 pnpm 时,`pnpm qa:reset --seed x` 和 `pnpm qa:reset -- --seed x` 这两种格式均被脚本接受。 ## 架构与质量 - `apps/web` 和 `apps/api`:演示产品。 - `packages/ui`、`contracts`、`database`、`testing`:设计系统、契约、持久层和 factories。 - `tests`:按层级划分的测试套件;故意损坏的 fixtures 已被隔离,绝不会包含在正常产品中。 - `scripts/qa`、`jira`、`reports`:适配器;不会重新实现现有的引擎。 - `.github/workflows`:针对 `localhost` 的 PR、main、nightly 和手动触发的 gates。 请从 [TESTING.md](TESTING.md)、[QA_WORKFLOW.md](QA_WORKFLOW.md) 和 [TROUBLESHOOTING.md](TROUBLESHOOTING.md) 开始阅读。架构说明位于 [docs/architecture/system.md](docs/architecture/system.md),质量 gates 位于 [docs/quality/quality-gates.md](docs/quality/quality-gates.md),实际验证证据位于 [docs/VALIDATION.md](docs/VALIDATION.md),25 个演示位于 [docs/DEMONSTRATIONS.md](docs/DEMONSTRATIONS.md),改进计划位于 [docs/BACKLOG.md](docs/BACKLOG.md)。 为了准备演示,请从 [QE 与 AI 的人类指南](docs/GUIA_HUMANA_QE_IA.md) 开始:它解释了角色、工作流、golden tests、截图、视频、跟踪记录、AI 的局限性,并提供了一个 30 分钟的演示剧本。演示中通过和未通过的 PRs 记录在 [docs/github/DEMO_PRS.md](docs/github/DEMO_PRS.md) 中。 ## 安全与隐私 请勿使用真实数据。`.env` 不纳入版本控制。Jira 仅在配置了 `JIRA_ENABLED=true` 和显式凭证时才会进行修改。激活的 ZAP 仅针对本地实验室。rrweb 演示默认禁用,不会发送网络请求,会屏蔽文本/输入内容,并在内存中最多保留 500 个事件。 ## 客观的局限性 k6/Lighthouse/sitespeed 的目标是实验室基准,而非企业级的 SLO。MCP 和 agents 属于实验性功能,绝不会被用作 gates。UI 覆盖了候选人/项目的主要流程;面试、邀请和评估则通过文档化的 API 进行全面测试。由于 web/API 共享同一个 monorepo 中的契约,因此未采用 Pact;sitespeed.io 由于执行成本问题,仍处于 `trial` 阶段并仅作为 nightly 信号。
标签:pocsuite3, 前端技术, 后端技术, 测试教育, 测试用例, 版权保护, 特征检测, 自动化攻击, 质量工程, 软件测试