diff --git a/packages/html-reporter/src/testResultView.tsx b/packages/html-reporter/src/testResultView.tsx
index 6cae643dac..100be92c9c 100644
--- a/packages/html-reporter/src/testResultView.tsx
+++ b/packages/html-reporter/src/testResultView.tsx
@@ -176,7 +176,7 @@ const StepTreeItem: React.FC<{
}> = ({ test, step, result, depth }) => {
return
{msToString(step.duration)}
- {step.attachments.length > 0 && { evt.stopPropagation(); }}>{icons.attachment()}}
+ {step.attachments.length > 0 && { evt.stopPropagation(); }}>{icons.attachment()}}
{statusIcon(step.error || step.duration === -1 ? 'failed' : (step.skipped ? 'skipped' : 'passed'))}
{step.title}
{step.count > 1 && <> ✕ {step.count}>}
diff --git a/tests/playwright-test/reporter-html.spec.ts b/tests/playwright-test/reporter-html.spec.ts
index 36e9817ffa..9281de2fa3 100644
--- a/tests/playwright-test/reporter-html.spec.ts
+++ b/tests/playwright-test/reporter-html.spec.ts
@@ -961,7 +961,7 @@ for (const useIntermediateMergeReport of [true, false] as const) {
const attachment = page.getByText('foo-2', { exact: true });
await expect(attachment).not.toBeInViewport();
- await page.getByLabel('attach "foo-2"').getByTitle('link to attachment').click();
+ await page.getByTitle('link to "foo-2" attachment').click();
await expect(attachment).toBeInViewport();
await page.reload();