Files
Claude-Code-Workflow/ccw/frontend/playwright-report/data/e119ac6c858cee9ad3c4367e13ce141f7a8a1651.md
catlog22 81725c94b1 Add E2E tests for internationalization across multiple pages
- Implemented navigation.spec.ts to test language switching and translation of navigation elements.
- Created sessions-page.spec.ts to verify translations on the sessions page, including headers, status badges, and date formatting.
- Developed settings-page.spec.ts to ensure settings page content is translated and persists across sessions.
- Added skills-page.spec.ts to validate translations for skill categories, action buttons, and empty states.
2026-01-30 22:54:21 +08:00

5.1 KiB

Page snapshot

- generic [ref=e3]:
  - banner [ref=e4]:
    - link "navigation.header.brand" [ref=e6] [cursor=pointer]:
      - /url: /
      - img [ref=e7]
      - generic [ref=e11]: navigation.header.brand
    - generic [ref=e12]:
      - combobox "Select language" [active] [ref=e13] [cursor=pointer]:
        - img [ref=e14]
        - generic:
          - generic:
            - generic: 🇨🇳
            - generic: 中文
        - img [ref=e21]
      - button "common.aria.switchToDarkMode" [ref=e23] [cursor=pointer]:
        - img [ref=e24]
      - button "common.aria.userMenu" [ref=e27] [cursor=pointer]:
        - img [ref=e28]
  - generic [ref=e31]:
    - navigation "Claude Code Workflow" [ref=e32]:
      - navigation [ref=e33]:
        - list [ref=e34]:
          - listitem [ref=e35]:
            - link "navigation.main.home" [ref=e36] [cursor=pointer]:
              - /url: /
              - img [ref=e37]
              - generic [ref=e40]: navigation.main.home
          - listitem [ref=e41]:
            - link "navigation.main.sessions" [ref=e42] [cursor=pointer]:
              - /url: /sessions
              - img [ref=e43]
              - generic [ref=e48]: navigation.main.sessions
          - listitem [ref=e49]:
            - link "navigation.main.liteTasks" [ref=e50] [cursor=pointer]:
              - /url: /lite-tasks
              - img [ref=e51]
              - generic [ref=e53]: navigation.main.liteTasks
          - listitem [ref=e54]:
            - link "navigation.main.project" [ref=e55] [cursor=pointer]:
              - /url: /project
              - img [ref=e56]
              - generic [ref=e61]: navigation.main.project
          - listitem [ref=e62]:
            - link "navigation.main.history" [ref=e63] [cursor=pointer]:
              - /url: /history
              - img [ref=e64]
              - generic [ref=e67]: navigation.main.history
          - listitem [ref=e68]:
            - link "navigation.main.orchestrator" [ref=e69] [cursor=pointer]:
              - /url: /orchestrator
              - img [ref=e70]
              - generic [ref=e74]: navigation.main.orchestrator
          - listitem [ref=e75]:
            - link "navigation.main.loops" [ref=e76] [cursor=pointer]:
              - /url: /loops
              - img [ref=e77]
              - generic [ref=e82]: navigation.main.loops
          - listitem [ref=e83]:
            - link "navigation.main.issues" [ref=e84] [cursor=pointer]:
              - /url: /issues
              - img [ref=e85]
              - generic [ref=e89]: navigation.main.issues
          - listitem [ref=e90]:
            - link "navigation.main.skills" [ref=e91] [cursor=pointer]:
              - /url: /skills
              - img [ref=e92]
              - generic [ref=e98]: navigation.main.skills
          - listitem [ref=e99]:
            - link "navigation.main.commands" [ref=e100] [cursor=pointer]:
              - /url: /commands
              - img [ref=e101]
              - generic [ref=e104]: navigation.main.commands
          - listitem [ref=e105]:
            - link "navigation.main.memory" [ref=e106] [cursor=pointer]:
              - /url: /memory
              - img [ref=e107]
              - generic [ref=e117]: navigation.main.memory
          - listitem [ref=e118]:
            - link "navigation.main.settings" [ref=e119] [cursor=pointer]:
              - /url: /settings
              - img [ref=e120]
              - generic [ref=e123]: navigation.main.settings
          - listitem [ref=e124]:
            - link "navigation.main.help" [ref=e125] [cursor=pointer]:
              - /url: /help
              - img [ref=e126]
              - generic [ref=e130]: navigation.main.help
      - button "navigation.sidebar.collapseAria" [ref=e132] [cursor=pointer]:
        - img [ref=e133]
        - generic [ref=e137]: navigation.sidebar.collapse
    - main [ref=e138]:
      - generic [ref=e139]:
        - generic [ref=e140]:
          - generic [ref=e141]:
            - heading "memory.title" [level=1] [ref=e142]:
              - img [ref=e143]
              - text: memory.title
            - paragraph [ref=e153]: memory.description
          - generic [ref=e154]:
            - button "common.actions.refresh" [disabled]:
              - img
              - text: common.actions.refresh
            - button "memory.actions.add" [ref=e155] [cursor=pointer]:
              - img [ref=e156]
              - text: memory.actions.add
        - generic [ref=e159]:
          - generic [ref=e161]:
            - img [ref=e163]
            - generic [ref=e167]:
              - generic [ref=e168]: "0"
              - paragraph [ref=e169]: memory.stats.count
          - generic [ref=e171]:
            - img [ref=e173]
            - generic [ref=e179]:
              - generic [ref=e180]: "0"
              - paragraph [ref=e181]: memory.stats.claudeMdCount
          - generic [ref=e183]:
            - img [ref=e185]
            - generic [ref=e195]:
              - generic [ref=e196]: 0 B
              - paragraph [ref=e197]: memory.stats.totalSize
        - generic [ref=e199]:
          - img [ref=e200]
          - textbox "memory.filters.search" [ref=e203]