๐ Docs Speed
Selamat datang di dokumentasi Docs Speed - solusi QA automation lengkap untuk testing API dan UI menggunakan Playwright dan TypeScript.
Apa itu Docs Speed?โ
Docs Speed adalah suite QA automation yang komprehensif dirancang untuk menguji sistem dengan cakupan lengkap:
- โ API Testing - Validasi endpoint, response schema, dan business logic
- ๐จ UI Testing - Automasi browser testing dengan semantic locators
- ๐ Multi-Domain - Support untuk moneysite, admin, auth, dan central services
- ๐ Enterprise Grade - Reusable helpers, fixtures, dan schema validation
Teknologi yang Digunakanโ
- Playwright - Modern testing framework untuk cross-browser automation
- TypeScript - Type-safe test development dengan strict mode
- pnpm - Fast package manager untuk dependency management
- AJV - JSON schema validation untuk API responses
Quick Startโ
1. Setup Environmentโ
# Install dependencies
pnpm install
# Setup environment variables
# Konfigurasi BASE_URL, credentials, dan API endpoints
2. Menjalankan Testsโ
# Jalankan semua tests
pnpm test
# UI mode - visual test runner
pnpm test:ui
# Lihat detailed report
pnpm report
3. Linting & Formattingโ
# Check linting
pnpm lint:check
# Check formatting
pnpm prettier:check
Struktur Projectโ
tests/
โโโ api/ # API tests per domain
โ โโโ moneysite/ # Player/Front-end API
โ โโโ admin/ # Admin/Backoffice API
โ โโโ auth/ # Authentication
โ โโโ central/ # Central services
โโโ ui/ # UI tests per domain
helpers/
โโโ apiClient.ts # API request factory
โโโ loginHelper.ts # Authentication helpers
โโโ schemaValidator.ts # JSON schema validation
โโโ fnHelpers.ts # Utility functions
schemas/ # JSON schemas untuk API responses
fixtures/ # Test data & fixtures
output/ # API response snapshots
Fitur Utamaโ
๐ Authenticationโ
loginAsPlayer()- Login sebagai player dengan credentialsloginAsAdmin()- Login sebagai admin user
๐ API Testingโ
- Centralized API client dengan
apiClient(baseURL) - Built-in schema validation dengan
schemaValidator() - Response snapshot comparison
- Support untuk berbagai content types
๐ฏ Custom Assertionsโ
shouldBeOneOf()- Custom matcher untuk enum valuesshouldMatch()- Pattern matching untuk responses- Advanced filtering dan sorting dengan
fnHelpers
๐ Test Data Generationโ
- Dynamic test data generation dengan
generatorData - Reusable fixtures untuk common scenarios
- Data-driven testing support
Dokumentasi Selanjutnyaโ
Jelajahi dokumentasi kami untuk informasi lebih detail:
- Admin Dashboard - Dokumentasi admin/backoffice features
- Moneysite Platform - Dokumentasi player platform features
Kontribusi & Standardsโ
Kami mengikuti standar kode yang ketat:
- TypeScript Strict Mode - Type safety adalah prioritas
- Semantic Locators - Prefer
getByRole,getByLabel,getByText - Test Naming - โ untuk positive cases, โ untuk negative cases
- DRY Principle - Extract reusable helpers jika ada duplication
Dukunganโ
Untuk pertanyaan atau issues:
- Cek dokumentasi yang tersedia
- Review test examples di folder
tests/ - Lihat existing helpers di folder
helpers/
Happy Testing! ๐งช
Mari kita pastikan setiap feature bekerja sempurna dengan automation testing yang solid.