-
Notifications
You must be signed in to change notification settings - Fork 206
Closed
Labels
enhancementNew feature or requestNew feature or requesthelp wantedExtra attention is neededExtra attention is needed
Description
Problem or Use Case
The ITS (Infrastructure Testing Suite) page has the most complex interactions in our e2e tests. Currently, there are 5 separate test files testing the ITS page:
ITS.spec.tsITSClusterActions.spec.tsITSImportCluster.spec.tsITSLabelsAndFilters.spec.tsITSTableFeature.spec.ts
All these tests duplicate selectors and interaction logic, making maintenance difficult. When UI elements change, we need to update multiple files.
Proposed Solution
Implement a comprehensive ITSPage class following the same POM pattern established in the Login page implementation.
Navigation & Setup
goto()- Navigate to ITS pagewaitForTable()- Wait for cluster table to loadapplyMSWScenario(scenarioName)- Apply MSW scenario
Import Cluster
clickImportCluster()- Open import dialogselectImportTab(tabName)- Switch between Quick Connect/Kubeconfig/Manual tabsfillQuickConnectForm(clusterName)- Fill quick connect formuploadKubeconfig(kubeconfig)- Upload kubeconfig filefillManualForm(clusterName)- Fill manual onboarding formsubmitImport()- Submit import formcloseImportDialog()- Close import dialog
Cluster Actions
getClusterRow(clusterName)- Get specific cluster rowclickClusterActions(clusterName)- Open actions menu for clustereditLabels(clusterName, labels)- Edit cluster labelsviewDetails(clusterName)- View cluster detailsdetachCluster(clusterName, confirm)- Detach cluster with confirmation
Labels & Filters
clickLabelChip(labelText)- Click label chip to filterclearFilters()- Clear all active filtersgetActiveFilters()- Get list of active filtersbulkManageLabels(clusterNames, labels)- Apply labels to multiple clusters
Table Features
searchClusters(query)- Search/filter clusterssortByColumn(columnName)- Sort table by columnselectClusters(clusterNames)- Select multiple clustersgetClusterCount()- Get total cluster countgetTableRows()- Get all table rowsisTableEmpty()- Check if table is empty
Bulk Operations
selectAllClusters()- Select all clustersclickBulkActions()- Open bulk actions menubulkEditLabels(labels)- Bulk edit labels
Are you willing to contribute?
- Yes, I'd like to help implement this feature.
Additional Context
No response
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requesthelp wantedExtra attention is neededExtra attention is needed
Type
Projects
Status
Done