QA LAB

คู่มือผู้ใช้ — QA LAB Portal

สำหรับลูกค้า QA / ทีมทดสอบที่ใช้งานผ่านเว็บหรือ CLI


1. ระบบนี้ทำอะไร (Scope)

จำลองพฤติกรรมผู้ใช้ + ทดสอบ เว็บ/API ที่ deploy แล้วมี URL — รวม backend ของแอปมือถือ และ E2E native ผ่าน Appium (ตามโหมดด้านล่าง) · ไม่จำกัดแค่ระบบแนว AI · ไม่ใช่การทดสอบ repo บน Git โดยตรง

อยู่ใน Scopeรายละเอียดสั้นๆ
เว็บ / API / SaaS / ERPระบบที่เปิดด้วย HTTP(S) สาธารณะได้
มือถือ — API / Backendโปรไฟล์ readiness mobile_api + API test / load
มือถือ — WebView / PWAหน้าเว็บ/hybrid ที่เปิดด้วย URL ได้
มือถือ — E2E native (Appium)License/local หรือ Cloud + BrowserStack BYOK
Readiness / Simulate / Load / Persona / MLตามโควต้าแพ็กเกจ
นอก Scope
Device farm ในตัวบน SaaS Cloudไม่โฮสต์ emulator/เครื่อง — ใช้ Appium ใน LAN หรือ BrowserStack BYOK
มีแค่โค้ดบน Git ยังไม่ deployต้องมี URL ระบบที่รันอยู่ก่อน
NAS / LAN / localhost จาก Cloudบล็อก SSRF — ใช้ License ใน LAN หรือทำ public URL

รายละเอียดเต็ม: Catalog · README Scope · MOBILE_NATIVE_E2E.md

Free Readiness  →  สแกน URL (web / mobile_api) — ไม่มี Appium
SaaS Cloud      →  เว็บ/API + โควต้า · Appium เฉพาะ BrowserStack BYOK
License / WL    →  ระบบภายใน / NAS / Appium ใน LAN

2. เริ่มต้น

1. เปิด Portal (เช่น https://qa-lab-production.up.railway.app หรือ URL ที่ทีม IT ให้)

2. เอกสารสาธารณะ: Catalog · User Manual · PDPA · Pricing strategy

3. สมัคร / เข้าสู่ระบบ — เลือกแผน Starter / Pro / Business

4. กดแท็บ Register หรือ Login


3. สมัครสมาชิก

ช่องคำอธิบาย
Companyชื่อบริษัท / ทีม
Full nameชื่อผู้ใช้ (ไม่บังคับ)
Emailใช้ login
Passwordอย่างน้อย 8 ตัวอักษร
PlanStarter ฿490 · Pro ฿3,490 · Business ฿5,990 / เดือน (Early Bird 2026)

สำคัญ: ต้องติ๊กยอมรับ นโยบายความเป็นส่วนตัว และ ข้อกำหนด


4. Free readiness check (ไม่ต้อง login ก็ได้)

สแกน URL ระบบจริง → คะแนน 0–100 + สูงสุด 5 ข้อค้นพบ (ไม่ใช้ LLM · ไม่ load test)

Profileใช้เมื่อ
web (default)เว็บ / SaaS API ทั่วไป
mobile_apiBackend ของแอปมือถือ (version/config, /api/me, deep-link well-known)

บน Portal: กล่อง Free readiness — ใส่ URL · เลือกโปรไฟล์ · เลือกภาษา TH/EN

CLI:

python main_cli.py readiness-audit https://app.example.com --lang th
python main_cli.py readiness-audit https://api.example.com --profile mobile_api --lang th

API: POST /api/readiness/audit

{"base_url":"https://api.example.com","lang":"th","profile":"mobile_api"}

ข้อจำกัด: เป้าต้องเป็น URL สาธารณะ · บล็อก localhost/private IP · rate limit ~5 ครั้ง/15 นาทีต่อ IP

คู่มือเต็ม: READINESS_TRIAL.md


5. หน้า Portal หลัง Login

Usage this month

แสดง quota ที่ใช้ไปแล้ว vs ขีดจำกัดแผน

Run test — แท็บ Web / Mobile

หลัง login มีแท็บ เว็บ และ มือถือ

แท็บเว็บ (ฟอร์มเดียว ไม่เลือก Type แยก):

ช่องความหมาย
จำนวนผู้ใช้สร้าง persona กี่คน (ถ้า ≥100 ใช้ auto-scale workers)
หัวข้อธีมกลุ่มผู้ใช้
เว็บไซต์ (URL)จำลองเข้าเว็บต่อจาก persona — เว้นว่างได้
วิเคราะห์ด้วย MLติ๊กเพื่อรัน ML ต่อท้าย (+ LLM ได้ถ้า Pro+)

กด รันPOST /api/jobs/full-test = personas → (simulate) → (ML) → dashboard

แท็บมือถือ:

1. Mobile API readiness — ใส่ URL backend แอป → สแกนโปรไฟล์ mobile_api

2. Native UI (Appium) — ตรวจสถานะ · วาง JSON spec · dry-run (default) หรือรันจริง

(License/local หรือ BrowserStack BYOK — Cloud ไม่โฮสต์ device farm)

Dashboard

iframe แสดงผลล่าสุด — กด รีเฟรชแดชบอร์ด (ใต้ฟอร์มรัน หรือข้างหัวข้อ Dashboard) เพื่อสร้างใหม่แล้วโหลด

Job history

ตาราง job ล่าสุด พร้อม status และ ID (full-test · mobile-e2e · dashboard ฯลฯ)


6. แอปมือถือ — เลือกโหมดให้ถูก

ต้องการอะไรทำอย่างไร
ตรวจ API/backend ของแอปแท็บ มือถือ → Mobile API readiness หรือ Free readiness โปรไฟล์ mobile_api
ทดสอบหน้าเว็บใน WebView/PWAแท็บ เว็บ ใส่ URL สาธารณะ
แตะ UI บนแอป native (.apk / .ipa)แท็บ มือถือ → Appium E2E หรือ CLI mobile-e2e

Native E2E (Appium)

Cloud ไม่โฮสต์ device farm

โหมดตั้งค่า
License / localรัน Appium ใน LAN · ตั้ง APPIUM_SERVER_URL
Cloudตั้ง BROWSERSTACK_USERNAME + BROWSERSTACK_ACCESS_KEY (BYOK)
python main_cli.py mobile-e2e --check
python main_cli.py mobile-e2e --spec specs/mobile_e2e_example.json --dry-run
python main_cli.py mobile-e2e --spec specs/mobile_e2e_example.json

API (ต้อง login):

GET /api/mobile-e2e/status · POST /api/jobs/mobile-e2e

นับโควต้า simulates · dry_run ตรวจ spec โดยไม่ต่อเครื่อง

คู่มือเต็ม + ตัวอย่าง steps: MOBILE_NATIVE_E2E.md


7. Privacy & PDPA

ปุ่มทำอะไร
Export my dataดาวน์โหลด JSON ข้อมูลบัญชี + jobs + consent
Delete accountลบบัญชีถาวร — พิมพ์ DELETE ยืนยัน

รายละเอียด: PDPA.md


8. แผนและ Quota (SaaS · Early Bird 2026)

แผนราคาSeatsSims/เดือนPersonasReadinessLLM
Starter฿49015020030ใช่
Pro฿3,49033002,000100ใช่
Business฿5,99055005,000500ใช่

เกิน quota → HTTP 402 — อัปเกรดแผนหรือรอเดือนใหม่

ราคา License / White Label: Catalog · PRICING.md


9. Auto-scaled load test

ในแท็บ เว็บ ใส่จำนวนผู้ใช้ ≥ 100 แล้วรัน — ระบบใช้ auto-scale workers อัตโนมัติ (แสดง quote บนฟอร์ม)

หรือ API: GET /api/scaling/quote?total_users=1000 · POST /api/jobs/full-test / scaled-test

ดู AUTO_SCALING.md


10. ปัญหาที่พบบ่อย

อาการแก้
Login ไม่ได้ตรวจ email/password · ลืมรหัส → ติดต่อ admin
Dashboard ว่างรัน persona หรือ ml-run ก่อน · รอ job completed
Quota exceededอัปเกรดแผน หรือรอเดือนใหม่
Readiness เข้าไม่ได้ / 400ต้องเป็น URL สาธารณะ — ไม่ใช่ Git repo, localhost, หรือ IP ใน LAN
mobile-e2e ได้ 501 บน Cloudตั้ง BrowserStack BYOK หรือใช้ License/local Appium
Appium session failตรวจ APPIUM_SERVER_URL, capabilities, path ของ .apk/.ipa
429 Too many requestsรอ (rate limit login/register/readiness)

11. ติดต่อ

เอกสารเพิ่ม: Catalog · READINESS_TRIAL.md · MOBILE_NATIVE_E2E.md · ADMIN_MANUAL.md