@@ -11,7 +11,11 @@ playwright/
1111│ ├── task-list-multi-session-tests.spec.ts # Task list and multi-session orchestration
1212│ ├── station-login-user-state-tests.spec.ts # Station login and user state orchestration
1313│ ├── basic-advanced-task-controls-tests.spec.ts # Basic and advanced task controls orchestration
14- │ └── advanced-task-controls-tests.spec.ts # Advanced task controls orchestration
14+ │ ├── advanced-task-controls-tests.spec.ts # Advanced task controls orchestration
15+ │ ├── dial-number-tests.spec.ts # Dial number task control orchestration
16+ │ ├── multiparty-conference-set-7-tests.spec.ts # Multiparty conference set 7 orchestration
17+ │ ├── multiparty-conference-set-8-tests.spec.ts # Multiparty conference set 8 orchestration
18+ │ └── multiparty-conference-set-9-tests.spec.ts # Multiparty conference set 9 orchestration
1519├── tests/ # Individual test implementations
1620├── Utils/ # Utility functions
1721├── test-data.ts # **CENTRAL CONFIG** - Test data & suite mapping
@@ -29,23 +33,49 @@ playwright/
2933- ✅ Positions browser windows automatically
3034- ✅ Maps test suites to user sets
3135
32- | Set | Focus | Port | Suite File |
33- | --------- | --------------------------------- | ---- | -------------------------------------------- |
34- | ** SET_1** | Digital incoming tasks & controls | 9221 | ` digital-incoming-task-tests.spec.ts ` |
35- | ** SET_2** | Task lists & multi-session | 9222 | ` task-list-multi-session-tests.spec.ts ` |
36- | ** SET_3** | Authentication & user management | 9223 | ` station-login-user-state-tests.spec.ts ` |
37- | ** SET_4** | Task controls & combinations | 9224 | ` basic-advanced-task-controls-tests.spec.ts ` |
38- | ** SET_5** | Advanced task operations | 9225 | ` advanced-task-controls-tests.spec.ts ` |
36+ | Set | Focus | Port | Suite File |
37+ | --------- | ---------------------------------- | ---- | -------------------------------------------- |
38+ | ** SET_1** | Digital incoming tasks & controls | 9221 | ` digital-incoming-task-tests.spec.ts ` |
39+ | ** SET_2** | Task lists & multi-session | 9222 | ` task-list-multi-session-tests.spec.ts ` |
40+ | ** SET_3** | Authentication & user management | 9223 | ` station-login-user-state-tests.spec.ts ` |
41+ | ** SET_4** | Task controls & combinations | 9224 | ` basic-advanced-task-controls-tests.spec.ts ` |
42+ | ** SET_5** | Advanced task operations | 9225 | ` advanced-task-controls-tests.spec.ts ` |
43+ | ** SET_6** | Dial number scenarios | 9226 | ` dial-number-tests.spec.ts ` |
44+ | ** SET_7** | Multiparty conference (team 25-28) | 9227 | ` multiparty-conference-set-7-tests.spec.ts ` |
45+ | ** SET_8** | Multiparty conference (team 29-32) | 9228 | ` multiparty-conference-set-8-tests.spec.ts ` |
46+ | ** SET_9** | Multiparty conference (team 33-36) | 9229 | ` multiparty-conference-set-9-tests.spec.ts ` |
3947
4048### Where to Add New Tests?
4149
42- | Test Type | Use Set | Why |
43- | ---------------------------- | ------- | --------------------------- |
44- | Digital channels tasks | SET_1 | Digital channels configured |
45- | Task list operations | SET_2 | Task list focus |
46- | Authentication/User states | SET_3 | User management |
47- | Basic/Advanced task controls | SET_4 | Task control operations |
48- | Complex advanced scenarios | SET_5 | Advanced operations |
50+ | Test Type | Use Set | Why |
51+ | ---------------------------- | --------- | --------------------------- |
52+ | Digital channels tasks | SET_1 | Digital channels configured |
53+ | Task list operations | SET_2 | Task list focus |
54+ | Authentication/User states | SET_3 | User management |
55+ | Basic/Advanced task controls | SET_4 | Task control operations |
56+ | Complex advanced scenarios | SET_5 | Advanced operations |
57+ | Dial number scenarios | SET_6 | Dial number flows |
58+ | Multiparty conference | SET_7/8/9 | 4-agent conference coverage |
59+
60+ ## Multiparty Conference Consolidation
61+
62+ To reduce runtime and repeated call initialization, conference scenarios are consolidated into combined tests while preserving scenario IDs in test names.
63+
64+ - ` SET_7 ` (` playwright/tests/multiparty-conference-set-7-test.spec.ts ` )
65+ - Combined: ` CTS-MPC-01+02 ` , ` CTS-MPC-03+04 ` , ` CTS-MPC-07+09+10 `
66+ - Standalone: ` CTS-MPC-05 ` , ` CTS-MPC-06 ` , ` CTS-SW-04 `
67+ - Combined: ` CTS-SW-02+03 `
68+ - Skipped: ` CTS-MPC-08 ` (>4 agents)
69+ - ` SET_8 ` (` playwright/tests/multiparty-conference-set-8-test.spec.ts ` )
70+ - Combined: ` CTS-TC-09+10 ` , ` CTS-TC-11+13 ` , ` CTS-TC-14+15 `
71+ - Standalone: ` CTS-TC-16 ` , ` CTS-SW-07 `
72+ - Skipped: ` CTS-TC-12 ` (feature-flag gated), ` CTS-TC-17 ` (>4 agents), ` CTS-TC-18 ` (EPDN)
73+ - ` SET_9 ` (` playwright/tests/multiparty-conference-set-9-test.spec.ts ` )
74+ - Combined: ` CTS-TC-01+02+03 ` , ` CTS-TC-04+05 `
75+ - Standalone: ` CTS-TC-06 ` , ` CTS-TC-07 ` , ` CTS-TC-08 `
76+ - Split: ` CTS-TC-06 ` and ` CTS-TC-07 ` run as separate tests (queue routing won't re-route to RONA'd agent in same session)
77+ - Combined: ` CTS-SW-05+06 `
78+ - Skipped: ` CTS-SW-01 ` (EP_DN), ` CTS-SW-08 ` (>4 agents)
4979
5080## 🧪 Adding New Tests
5181
@@ -139,7 +169,7 @@ test.describe('My New Feature Tests', createMyTests());
139169| Module | Key Functions |
140170| ------------------- | ----------------------------------------------------------- |
141171| ` incomingTaskUtils ` | ` createChatTask() ` , ` acceptIncomingTask() ` , ` endChatTask() ` |
142- | ` taskControlUtils ` | ` holdTask ()` , ` resumeTask ()` , ` endTask() ` |
172+ | ` taskControlUtils ` | ` holdCallToggle ()` , ` recordCallToggle ()` , ` endTask() ` |
143173| ` userStateUtils ` | ` changeUserState() ` , ` verifyCurrentState() ` |
144174| ` stationLoginUtils ` | ` telephonyLogin() ` , ` stationLogout() ` |
145175
@@ -165,11 +195,21 @@ PW_CHAT_URL=https://your-chat-url
165195PW_SANDBOX=your-sandbox-name
166196PW_ENTRY_POINT1=entry-point-1
167197PW_ENTRY_POINT2=entry-point-2
168- # ... PW_ENTRY_POINT3, 4, 5
198+ # ... PW_ENTRY_POINT3 ... PW_ENTRY_POINT9
169199```
170200
171201Test data is automatically handled by TestManager based on the running test set.
172202
203+ OAuth setup behavior (` playwright/global.setup.ts ` ):
204+
205+ - expands ` USER_SETS ` into set-scoped env keys
206+ - builds OAuth set groups dynamically from ` USER_SETS ` (chunk size ` 2 ` )
207+ - runs one parallel OAuth worker per generated group
208+ - each group uses ` OAUTH_BATCH_SIZE=4 ` internally
209+ - with current 9 sets this resolves to 5 groups: ` [SET_1,SET_2] ` , ` [SET_3,SET_4] ` , ` [SET_5,SET_6] ` , ` [SET_7,SET_8] ` , ` [SET_9] `
210+ - optionally collects dial-number token
211+ - writes all token/env updates in one final upsert pass
212+
173213## 🚀 Running Tests
174214
175215``` bash
@@ -182,16 +222,24 @@ yarn test:e2e suites/task-list-multi-session-tests.spec.ts
182222yarn test:e2e suites/station-login-user-state-tests.spec.ts
183223yarn test:e2e suites/basic-advanced-task-controls-tests.spec.ts
184224yarn test:e2e suites/advanced-task-controls-tests.spec.ts
225+ yarn test:e2e suites/dial-number-tests.spec.ts
226+ yarn test:e2e suites/multiparty-conference-set-7-tests.spec.ts
227+ yarn test:e2e suites/multiparty-conference-set-8-tests.spec.ts
228+ yarn test:e2e suites/multiparty-conference-set-9-tests.spec.ts
185229
186230# Run specific test sets (projects) - names match USER_SETS keys
187231yarn test:e2e --project=SET_1 # Digital incoming tasks
188232yarn test:e2e --project=SET_2 # Task list & multi-session
189233yarn test:e2e --project=SET_3 # Station login & user state
190234yarn test:e2e --project=SET_4 # Basic & advanced task controls
191235yarn test:e2e --project=SET_5 # Advanced task controls
192- # yarn test:e2e --project=SET_6 # Your new set (auto-available)
236+ yarn test:e2e --project=SET_6 # Dial number scenarios
237+ yarn test:e2e --project=SET_7 # Multiparty conference (team 25-28)
238+ yarn test:e2e --project=SET_8 # Multiparty conference (team 29-32)
239+ yarn test:e2e --project=SET_9 # Multiparty conference (team 33-36)
193240
194241# Development & debugging
242+ yarn playwright test --config=playwright.config.ts --project=" OAuth: Get Access Token" # Run OAuth setup only
195243yarn test:e2e --ui # UI mode
196244yarn test:e2e --debug # Debug mode
197245yarn test:e2e --headed # Run with browser visible
@@ -221,7 +269,7 @@ yarn test:e2e --headed # Run with browser visible
221269** Common Issues:**
222270
223271- Browser launch fails → Check Chrome and ports 9221+ (auto-assigned)
224- - Auth errors → Verify OAuth in ` global.setup.ts `
272+ - Auth errors → Verify OAuth in ` global.setup.ts ` and confirm ` OAUTH_BATCH_SIZE ` /credentials are valid
225273- Widget timeouts → Increase ` WIDGET_INIT_TIMEOUT `
226274- Test conflicts → Ports/positions are auto-managed per ` USER_SETS `
227275- New set not appearing → Check ` TEST_SUITE ` property in ` test-data.ts `
0 commit comments