fix(browser_tests): replace .nth() with semantic selectors

- Remove unused saveButton selector from ComfyMenu
- Replace widgetTextBox .nth(1) with node-scoped selector
- Replace .nth(3) toast selector with .p-toast-message filter
- Replace .nth(1) category selector with getByTestId
- Replace .nth(1) node selector with getNodeInFolder() helper
- Add nodeSelector(), folderSelector(), getNodeInFolder() methods
- Add saveButton and nodeLibrary TestIds to selectors.ts

Amp-Thread-ID: https://ampcode.com/threads/T-019c155c-92e1-76f3-b6ce-7fc3ffa11582
Co-authored-by: Amp <amp@ampcode.com>
This commit is contained in:
Alexander Brown
2026-01-31 10:52:41 -08:00
parent 22ff808d59
commit 7f2454efec
6 changed files with 37 additions and 24 deletions

View File

@@ -109,19 +109,16 @@ test.describe('Settings Search functionality', { tag: '@settings' }, () => {
const settingsDialog = comfyPage.page.locator('.settings-container')
await expect(settingsDialog).toBeVisible()
// Get categories and click on different ones
const categories = comfyPage.page.locator(
'.settings-sidebar .p-listbox-option'
// Click on a specific category (Appearance) to verify category switching
const appearanceCategory = comfyPage.page.getByTestId(
'settings-tab-Appearance'
)
const categoryCount = await categories.count()
await appearanceCategory.click()
if (categoryCount > 1) {
// Click on the second category
await categories.nth(1).click()
// Verify the category is selected
await expect(categories.nth(1)).toHaveClass(/p-listbox-option-selected/)
}
// Verify the category is selected by checking if its parent option has the selected class
await expect(appearanceCategory.locator('xpath=ancestor::li')).toHaveClass(
/p-listbox-option-selected/
)
})
test('settings content area is visible', async ({ comfyPage }) => {