diff --git a/packages/sanity/playwright-ct/tests/comments/CommentInput.spec.tsx b/packages/sanity/playwright-ct/tests/comments/CommentInput.spec.tsx
new file mode 100644
index 000000000000..199a1e4d8998
--- /dev/null
+++ b/packages/sanity/playwright-ct/tests/comments/CommentInput.spec.tsx
@@ -0,0 +1,31 @@
+import {expect, test} from '@playwright/experimental-ct-react'
+import React from 'react'
+import {testHelpers} from '../utils/testHelpers'
+import {CommentsInputStory} from './CommentInputStory'
+
+test.describe('Comments', () => {
+ test.describe('CommentInput', () => {
+ test('Should render', async ({mount, page}) => {
+ await mount()
+ const $editable = page.getByTestId('comment-input-editable')
+ await expect($editable).toBeVisible()
+ })
+
+ test('Should be able to type into', async ({mount, page}) => {
+ const {insertPortableText} = testHelpers({page})
+ await mount()
+ const $editable = page.getByTestId('comment-input-editable')
+ await expect($editable).toBeEditable()
+ await insertPortableText('My first comment!', $editable)
+ await expect($editable).toHaveText('My first comment!')
+ })
+
+ test('Should bring up mentions menu when typing @', async ({mount, page}) => {
+ await mount()
+ const $editable = page.getByTestId('comment-input-editable')
+ await expect($editable).toBeEditable()
+ await page.keyboard.type(`@`)
+ await expect(page.getByTestId('comments-mentions-menu')).toBeVisible()
+ })
+ })
+})
diff --git a/packages/sanity/playwright-ct/tests/comments/CommentInputStory.tsx b/packages/sanity/playwright-ct/tests/comments/CommentInputStory.tsx
new file mode 100644
index 000000000000..8d8573a0f309
--- /dev/null
+++ b/packages/sanity/playwright-ct/tests/comments/CommentInputStory.tsx
@@ -0,0 +1,40 @@
+import React, {useState} from 'react'
+import {CurrentUser, PortableTextBlock} from '@sanity/types'
+import {CommentInput} from '../../../src/desk/comments/src/components/pte/comment-input/CommentInput'
+import {TestWrapper} from '../formBuilder/utils/TestWrapper'
+
+const currentUser: CurrentUser = {
+ email: '',
+ id: '',
+ name: '',
+ role: '',
+ roles: [],
+ profileImage: '',
+ provider: '',
+}
+
+const SCHEMA_TYPES: [] = []
+
+export function CommentsInputStory() {
+ const [value, setValue] = useState(null)
+
+ return (
+
+ {
+ // ...
+ }}
+ onSubmit={() => {
+ // ...
+ }}
+ />
+
+ )
+}