Files
Claude-Code-Workflow/ccw/frontend/playwright-report/data/e1412618739de5c5e4dbb83d0de1ecdeca750fbb.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.7 KiB

Page snapshot

- generic [ref=e3]:
  - banner [ref=e4]:
    - link "navigation.header.brand" [ref=e6]:
      - /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=e18]
      - button "common.aria.switchToDarkMode" [ref=e20] [cursor=pointer]:
        - img [ref=e21]
      - button "common.aria.userMenu" [ref=e24] [cursor=pointer]:
        - img [ref=e25]
  - generic [ref=e28]:
    - navigation "Claude Code Workflow" [ref=e29]:
      - navigation [ref=e30]:
        - list [ref=e31]:
          - listitem [ref=e32]:
            - link "navigation.main.home" [ref=e33]:
              - /url: /
              - img [ref=e34]
              - generic [ref=e37]: navigation.main.home
          - listitem [ref=e38]:
            - link "navigation.main.sessions" [ref=e39]:
              - /url: /sessions
              - img [ref=e40]
              - generic [ref=e42]: navigation.main.sessions
          - listitem [ref=e43]:
            - link "navigation.main.liteTasks" [ref=e44]:
              - /url: /lite-tasks
              - img [ref=e45]
              - generic [ref=e47]: navigation.main.liteTasks
          - listitem [ref=e48]:
            - link "navigation.main.project" [ref=e49]:
              - /url: /project
              - img [ref=e50]
              - generic [ref=e55]: navigation.main.project
          - listitem [ref=e56]:
            - link "navigation.main.history" [ref=e57]:
              - /url: /history
              - img [ref=e58]
              - generic [ref=e61]: navigation.main.history
          - listitem [ref=e62]:
            - link "navigation.main.orchestrator" [ref=e63]:
              - /url: /orchestrator
              - img [ref=e64]
              - generic [ref=e68]: navigation.main.orchestrator
          - listitem [ref=e69]:
            - link "navigation.main.loops" [ref=e70]:
              - /url: /loops
              - img [ref=e71]
              - generic [ref=e76]: navigation.main.loops
          - listitem [ref=e77]:
            - link "navigation.main.issues" [ref=e78]:
              - /url: /issues
              - img [ref=e79]
              - generic [ref=e81]: navigation.main.issues
          - listitem [ref=e82]:
            - link "navigation.main.skills" [ref=e83]:
              - /url: /skills
              - img [ref=e84]
              - generic [ref=e86]: navigation.main.skills
          - listitem [ref=e87]:
            - link "navigation.main.commands" [ref=e88]:
              - /url: /commands
              - img [ref=e89]
              - generic [ref=e91]: navigation.main.commands
          - listitem [ref=e92]:
            - link "navigation.main.memory" [ref=e93]:
              - /url: /memory
              - img [ref=e94]
              - generic [ref=e104]: navigation.main.memory
          - listitem [ref=e105]:
            - link "navigation.main.settings" [ref=e106]:
              - /url: /settings
              - img [ref=e107]
              - generic [ref=e110]: navigation.main.settings
          - listitem [ref=e111]:
            - link "navigation.main.help" [ref=e112]:
              - /url: /help
              - img [ref=e113]
              - generic [ref=e116]: navigation.main.help
      - button "navigation.sidebar.collapseAria" [ref=e118] [cursor=pointer]:
        - img [ref=e119]
        - generic [ref=e122]: navigation.sidebar.collapse
    - main [ref=e123]:
      - generic [ref=e124]:
        - generic [ref=e125]:
          - generic [ref=e126]:
            - heading "home.title" [level=1] [ref=e127]
            - paragraph [ref=e128]: home.description
          - button "common.actions.refresh" [ref=e129] [cursor=pointer]:
            - img [ref=e130]
            - text: common.actions.refresh
        - generic [ref=e135]:
          - heading "home.sections.statistics" [level=2] [ref=e136]
          - generic [ref=e137]:
            - generic [ref=e140]:
              - generic [ref=e141]:
                - paragraph [ref=e142]: home.stats.activeSessions
                - paragraph [ref=e144]: "0"
              - img [ref=e146]
            - generic [ref=e150]:
              - generic [ref=e151]:
                - paragraph [ref=e152]: home.stats.totalTasks
                - paragraph [ref=e154]: "0"
              - img [ref=e156]
            - generic [ref=e161]:
              - generic [ref=e162]:
                - paragraph [ref=e163]: home.stats.completedTasks
                - paragraph [ref=e165]: "0"
              - img [ref=e167]
            - generic [ref=e172]:
              - generic [ref=e173]:
                - paragraph [ref=e174]: home.stats.pendingTasks
                - paragraph [ref=e176]: "0"
              - img [ref=e178]
            - generic [ref=e183]:
              - generic [ref=e184]:
                - paragraph [ref=e185]: common.status.failed
                - paragraph [ref=e187]: "0"
              - img [ref=e189]
            - generic [ref=e195]:
              - generic [ref=e196]:
                - paragraph [ref=e197]: common.stats.todayActivity
                - paragraph [ref=e199]: "0"
              - img [ref=e201]
        - generic [ref=e203]:
          - generic [ref=e204]:
            - heading "home.sections.recentSessions" [level=2] [ref=e205]
            - button "common.actions.viewAll" [ref=e206] [cursor=pointer]
          - generic [ref=e207]:
            - img [ref=e208]
            - heading "home.emptyState.noSessions.title" [level=3] [ref=e210]
            - paragraph [ref=e211]: home.emptyState.noSessions.message