Employer Settings - Frontend Manual Test Cases
Test Environment: http://localhost:4200 [or test server URL]
Tester: _______________
Date: _______________
Prerequisites
- Backend server running on
http://localhost:5000 - Frontend running on
http://localhost:4200 - Logged in as Tenant Administrator (admin role required)
- Test image files available (PNG, JPEG for upload tests)
Test Data
| Item | Value |
|---|---|
| Admin Email | tn@thaiscada.com [or your admin email] |
| Admin Password | Test1234* [or your password] |
| Test Company Name (Thai) | บริษัท ทดสอบ จำกัด [or your test name] |
| Test Company Name (English) | Test Company Ltd. [or your test name] |
| Test Address | 123 ถนนทดสอบ กรุงเทพฯ 10110 [or your test address] |
| Test Phone | 02-123-4567 [or your test phone] |
| Test Email | contact@test-company.com [or your test email] |
| Test Website | https://test-company.com [or your test website] |
| Test Logo File | Any PNG or JPEG image (recommended: 200x200px) |
| Test Seal File | Any PNG or JPEG image (recommended: 200x200px) |
| Invalid File | Any PDF or text file (for negative test) |
Navigation Path
Menu: ตั้งค่า (Settings) → ตั้งค่าธุรกิจ (Business Settings)
URL: /tools/settings/employer
Test Summary
| Category | Total | Dev | QA |
|---|---|---|---|
| 1. Navigation & Access | 3 | 3 | |
| 2. General Information Tab | 4 | 4 | |
| 3. Document Numbering Tab | 3 | 3 | |
| 4. Logo & Seal Tab | 6 | 6 | |
| 5. Save & Refresh | 3 | 3 | |
| Total | 19 | 19 |
1. Navigation & Access Tests
TC-EMP-001: Admin can access employer settings
Precondition: User is logged in as Tenant Administrator
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Click "ตั้งค่า" (Settings) menu in sidebar | Settings submenu expands | ✅ | [ ] |
| 2 | Locate "ตั้งค่าธุรกิจ" (Business Settings) menu item | Menu item visible with info icon | ✅ | [ ] |
| 3 | Click "ตั้งค่าธุรกิจ" (Business Settings) | Page loads | ✅ | [ ] |
| 4 | Verify URL | URL is /tools/settings/employer | ✅ | [ ] |
| 5 | Verify page content | Employer settings form displayed with 3 tabs | ✅ | [ ] |
[Screenshot: Settings menu with Business Settings option] [Screenshot: Employer Settings page loaded]
Notes: _______________
TC-EMP-002: Non-admin cannot see menu item
Precondition: User is logged in as Contractor or other non-admin role
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Login as contractor: safety-contractor1-0@outlook.com | Login successful | ✅ | [ ] |
| 2 | Navigate to Settings menu area | View available menu items | ✅ | [ ] |
| 3 | Look for "ตั้งค่าธุรกิจ" (Business Settings) | Menu item should NOT be visible | ✅ | [ ] |
| 4 | Try direct URL navigation to /tools/settings/employer | Access denied or redirected | ✅ | [ ] |
[Screenshot: Menu without Business Settings for contractor]
Notes: _______________
TC-EMP-003: Page loads with existing data
Precondition: Logged in as admin, employer data exists in database
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Navigate to Employer Settings page | Page starts loading | ✅ | [ ] |
| 2 | Observe loading indicator | Progress bar appears at top | ✅ | [ ] |
| 3 | Wait for data to load | Form fields populated with existing data | ✅ | [ ] |
| 4 | Verify company name fields | Thai and English names displayed | ✅ | [ ] |
| 5 | Verify contact information | Address, phone, email, website displayed | ✅ | [ ] |
[Screenshot: Employer Settings with loaded data]
Notes: _______________
2. General Information Tab Tests (ข้อมูลทั่วไป)
TC-EMP-004: View company info fields
Precondition: On Employer Settings page, "ข้อมูลทั่วไป" tab active
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Verify tab is active | "ข้อมูลทั่วไป" (General Information) tab highlighted | ✅ | [ ] |
| 2 | Locate company name (Thai) field | Field labeled "ชื่อบริษัท (ไทย)" or similar | ✅ | [ ] |
| 3 | Locate company name (English) field | Field labeled "ชื่อบริษัท (อังกฤษ)" or similar | ✅ | [ ] |
| 4 | Locate address field | Field labeled "ที่อยู่" | ✅ | [ ] |
| 5 | Locate phone field | Field labeled "เบอร์โทรศัพท์" | ✅ | [ ] |
| 6 | Locate email field | Field labeled "อีเมล" | ✅ | [ ] |
| 7 | Locate website field | Field labeled "เว็บไซต์" | ✅ | [ ] |
| 8 | Locate contact person field | Field labeled "ผู้ติดต่อ" or "หัวหน้างาน" | ✅ | [ ] |
[Screenshot: General Information tab with all fields]
Notes: _______________
TC-EMP-005: Edit company name (Thai)
Precondition: On General Information tab
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Click on company name (Thai) field | Field becomes editable, cursor appears | ✅ | [ ] |
| 2 | Clear existing text | Field is empty | ✅ | [ ] |
| 3 | Enter new name: บริษัท ทดสอบการแก้ไข จำกัด [or your test name] | Text appears in field | ✅ | [ ] |
| 4 | Verify Thai characters display correctly | Thai text renders properly | ✅ | [ ] |
| 5 | Click outside the field | Field retains new value | ✅ | [ ] |
[Screenshot: Edited Thai company name]
Notes: Do NOT save yet - will test save functionality separately
TC-EMP-006: Edit company name (English)
Precondition: On General Information tab
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Click on company name (English) field | Field becomes editable | ✅ | [ ] |
| 2 | Clear existing text | Field is empty | ✅ | [ ] |
| 3 | Enter new name: Test Edit Company Ltd. [or your test name] | Text appears in field | ✅ | [ ] |
| 4 | Click outside the field | Field retains new value | ✅ | [ ] |
[Screenshot: Edited English company name]
Notes: _______________
TC-EMP-007: Edit contact information
Precondition: On General Information tab
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Edit address field: 456 ถนนใหม่ กรุงเทพฯ 10200 [or your test address] | Address updated | ✅ | [ ] |
| 2 | Edit phone field: 02-987-6543 [or your test phone] | Phone updated | ✅ | [ ] |
| 3 | Edit email field: new-email@test.com [or your test email] | Email updated | ✅ | [ ] |
| 4 | Edit website field: https://new-website.com [or your test URL] | Website updated | ✅ | [ ] |
| 5 | Edit contact person field: สมชาย ใจดี [or your test name] | Contact person updated | ✅ | [ ] |
| 6 | Verify all fields retain changes | All edited values remain | ✅ | [ ] |
[Screenshot: All contact fields edited]
Notes: _______________
3. Document Numbering Tab Tests (เลขรันและหัวเอกสาร)
TC-EMP-008: View document numbering options
Precondition: On Employer Settings page
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Click "เลขรันและหัวเอกสาร" (Document Numbering) tab | Tab becomes active | ✅ | [ ] |
| 2 | Verify tab content loads | Document numbering options displayed | ✅ | [ ] |
| 3 | Identify available numbering formats | Radio button list of options visible | ✅ | [ ] |
| 4 | Verify current selection | One option has radio button selected | ✅ | [ ] |
| 5 | Locate custom format field | Text field for custom format visible | ✅ | [ ] |
[Screenshot: Document Numbering tab]
Notes: _______________
TC-EMP-009: Select different numbering format
Precondition: On Document Numbering tab
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Identify currently selected option | Note which radio button is selected | ✅ | [ ] |
| 2 | Click on a different numbering option | Radio button changes to new selection | ✅ | [ ] |
| 3 | Verify selection changed | New option shows as selected | ✅ | [ ] |
| 4 | Verify description displayed | Option description text visible | ✅ | [ ] |
[Screenshot: Different numbering option selected]
Notes: _______________
TC-EMP-010: Enter custom format
Precondition: On Document Numbering tab
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Locate "รูปแบบกำหนดเอง" (Custom Format) field | Text input field visible | ✅ | [ ] |
| 2 | Click on custom format field | Field becomes editable | ✅ | [ ] |
| 3 | Enter custom format: {{yyyyMM######}} [or your format] | Format text appears | ✅ | [ ] |
| 4 | Click outside field | Value retained | ✅ | [ ] |
[Screenshot: Custom format entered]
Notes: _______________
4. Logo & Seal Tab Tests (โลโก้และตรายาง)
TC-EMP-011: View current logo
Precondition: On Employer Settings page
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Click "โลโก้และตรายาง" (Logo & Seal) tab | Tab becomes active | ✅ | [ ] |
| 2 | Locate logo section | Section labeled "โลโก้" (Logo) visible | ✅ | [ ] |
| 3 | Verify logo preview | Image preview displayed (200x200px area) | ✅ | [ ] |
| 4 | If no logo uploaded | Default placeholder image shown | ✅ | [ ] |
| 5 | Locate upload button | Button labeled "เลือกรูปโลโก้สำหรับอัพโหลด" visible | ✅ | [ ] |
[Screenshot: Logo section with preview]
Notes: _______________
TC-EMP-012: Upload new logo (PNG)
Precondition: On Logo & Seal tab, have a PNG image file ready
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Click "เลือกรูปโลโก้สำหรับอัพโหลด" (Select Logo for Upload) | File picker dialog opens | ✅ | [ ] |
| 2 | Select a PNG image file | File selected | ✅ | [ ] |
| 3 | Click Open/OK in file picker | File picker closes | ✅ | [ ] |
| 4 | Wait for upload | Progress indicator appears | ✅ | [ ] |
| 5 | Verify upload success | Logo preview updates with new image | ✅ | [ ] |
| 6 | Verify success notification | Snackbar or message confirms upload | ✅ | [ ] |
[Screenshot: File picker dialog] [Screenshot: New logo uploaded]
Notes: _______________
TC-EMP-013: Upload logo with invalid format (PDF)
Precondition: On Logo & Seal tab, have a PDF file ready
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Click logo upload button | File picker opens | ✅ | [ ] |
| 2 | Select a PDF file | File selected | ✅ | [ ] |
| 3 | Click Open/OK | Upload attempt triggered | ✅ | [ ] |
| 4 | Verify error message | Error indicates only image files allowed | ✅ | [ ] |
| 5 | Verify logo unchanged | Original logo still displayed | ✅ | [ ] |
[Screenshot: Invalid file type error]
Notes: Error message should indicate: "Only image files (PNG, JPEG, GIF, WebP) are allowed"
TC-EMP-014: View current seal
Precondition: On Logo & Seal tab
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Locate seal section | Section labeled "ตรายาง" (Seal) visible | ✅ | [ ] |
| 2 | Verify seal preview | Image preview displayed (200x200px area) | ✅ | [ ] |
| 3 | If no seal uploaded | Default placeholder image shown | ✅ | [ ] |
| 4 | Locate upload button | Button labeled "เลือกรูปตรายางสำหรับอัพโหลด" visible | ✅ | [ ] |
[Screenshot: Seal section with preview]
Notes: _______________
TC-EMP-015: Upload new seal (JPEG)
Precondition: On Logo & Seal tab, have a JPEG image file ready
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Click "เลือกรูปตรายางสำหรับอัพโหลด" (Select Seal for Upload) | File picker opens | ✅ | [ ] |
| 2 | Select a JPEG/JPG image file | File selected | ✅ | [ ] |
| 3 | Click Open/OK | Upload triggered | ✅ | [ ] |
| 4 | Wait for upload | Progress indicator appears | ✅ | [ ] |
| 5 | Verify upload success | Seal preview updates with new image | ✅ | [ ] |
[Screenshot: New seal uploaded]
Notes: _______________
TC-EMP-016: Click logo/seal to preview
Precondition: Logo and/or seal has been uploaded
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Click on logo preview image | Asset viewer dialog opens | ✅ | [ ] |
| 2 | Verify dialog content | Shows full-size image, title, file info | ✅ | [ ] |
| 3 | Close dialog | Dialog closes | ✅ | [ ] |
| 4 | Click on seal preview image | Asset viewer dialog opens | ✅ | [ ] |
| 5 | Verify dialog content | Shows full-size image, title, file info | ✅ | [ ] |
| 6 | Close dialog | Returns to form | ✅ | [ ] |
[Screenshot: Asset viewer dialog with logo] [Screenshot: Asset viewer dialog with seal]
Notes: _______________
5. Save & Refresh Tests
TC-EMP-017: Save changes successfully
Precondition: Made changes to employer settings (any tab)
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Make a change to any field (e.g., company name) | Field value changed | ✅ | [ ] |
| 2 | Locate toolbar at top of form | Toolbar with buttons visible | ✅ | [ ] |
| 3 | Click "บันทึก" (Save) button | Save action triggered | ✅ | [ ] |
| 4 | Observe progress indicator | Loading bar appears at top | ✅ | [ ] |
| 5 | Wait for save to complete | Progress bar disappears | ✅ | [ ] |
| 6 | Verify success notification | Snackbar shows "บันทึกสำเร็จ" or similar | ✅ | [ ] |
| 7 | Refresh page (F5) | Page reloads | ✅ | [ ] |
| 8 | Verify changes persisted | Changed values still displayed | ✅ | [ ] |
[Screenshot: Save button in toolbar] [Screenshot: Success notification]
Notes: _______________
TC-EMP-018: Refresh reloads data
Precondition: On Employer Settings page
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Note current field values | Record a few values | ✅ | [ ] |
| 2 | Click "รีเฟรช" (Refresh) button in toolbar | Refresh triggered | ✅ | [ ] |
| 3 | Observe progress indicator | Loading bar appears | ✅ | [ ] |
| 4 | Wait for refresh complete | Data reloaded | ✅ | [ ] |
| 5 | Verify data displayed | Same values as before (from database) | ✅ | [ ] |
[Screenshot: Refresh button in toolbar]
Notes: _______________
TC-EMP-019: Unsaved changes handling
Precondition: On Employer Settings page, no pending changes
| Step | Action | Expected Result | Dev | QA |
|---|---|---|---|---|
| 1 | Make a change to a field | Field value changed | ✅ | [ ] |
| 2 | WITHOUT saving, click Refresh button | Refresh triggered | ✅ | [ ] |
| 3 | Observe behavior | Check if warning appears or data reloads | ✅ | [ ] |
| 4 | If warning appears, verify message | Should warn about unsaved changes | ✅ | [ ] |
| 5 | If no warning, verify field reset | Changed value replaced with database value | ✅ | [ ] |
[Screenshot: Unsaved changes warning (if exists)]
Notes: Behavior depends on implementation - may or may not have unsaved changes warning
Test Execution Notes
Tester Comments:
Issues Found:
| Issue ID | Test Case | Description | Severity |
|---|---|---|---|
Environment Details:
| Item | Value |
|---|---|
| Browser | |
| Browser Version | |
| OS | |
| Screen Resolution | |
| Backend URL | |
| Frontend URL |
Sign-off:
| Role | Name | Date | Signature |
|---|---|---|---|
| Tester | |||
| Reviewer |