Closed r-sugi closed 2 months ago
The latest updates on your projects. Learn more about Vercel for Git ↗︎
Name | Status | Preview | Comments | Updated (UTC) |
---|---|---|---|---|
nextjs-tdd-template_storybook | ✅ Ready (Inspect) | Visit Preview | 💬 Add feedback | Aug 22, 2024 7:02am |
⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪ |
🧪 PR contains tests |
🔒 No security concerns identified |
⚡ Key issues to review モックの詳細 `next/router`のモックには多くのメソッドが含まれていますが、実際に必要なメソッドのみをモックすることを検討してください。不要なメソッドのモックは、テストの複雑さを不必要に増加させる可能性があります。 テストの独立性 各テストケースで`setup`関数を呼び出していますが、これによりテスト間での状態の分離が不十分になる可能性があります。`beforeEach`を使用して各テストの前に環境を設定することを検討してください。 |
Category | Suggestion | Score |
Accessibility |
フォームのアクセシビリティを向上させるために
___
** | 8 |
___
** | 8 | |
Best practice |
___
** | 7 |
Enhancement |
モック関数のデフォルトの戻り値を設定することでテストの安定性を向上させます。___ **`jest.fn()` でモックされた関数のデフォルトの戻り値を設定してください。これにより、テストの意図が明確になり、テストの安定性が向上します。** [jest.setup.ts [14-23]](https://github.com/r-sugi/nextjs-tdd-template/pull/153/files#diff-a1c786cdea90125d840669112d499d337a658bf6431a8c972a2e14301d908662R14-R23) ```diff jest.fn().mockResolvedValue(true), jest.fn().mockResolvedValue(true), -jest.fn(), -jest.fn(), jest.fn().mockResolvedValue(undefined), -jest.fn(), -jest.fn(), -jest.fn(), -jest.fn() +jest.fn().mockResolvedValue(undefined), +jest.fn().mockResolvedValue(undefined), +jest.fn().mockResolvedValue(undefined), +jest.fn().mockResolvedValue(undefined), +jest.fn().mockResolvedValue(undefined), +jest.fn().mockResolvedValue(undefined) ```Suggestion importance[1-10]: 5Why: Setting default return values for mocked functions can improve test stability and clarity, but the suggestion does not address a critical issue and the existing code already provides some default behavior. | 5 |
User description
124
PR Type
tests, enhancement
Description
next/router
のモックを追加し、ルーティングのテストを強化しました。index.test.tsx
において、JestとTesting Libraryを用いたブラックボックステストを実装しました。フォーム送信とキャッシュ保存のテストを追加し、ルーターとキャッシュのモック関数を利用しました。index.tsx
のフォーム要素にアクセシブルなラベルを追加し、aria-labelledby
とhtmlFor
を用いてフォームのアクセシビリティを向上させました。Changes walkthrough 📝
jest.setup.ts
Add mock for next/router in Jest setup
jest.setup.ts
next/router
.index.test.tsx
Add black-box tests for resign member input
src/feature/mypage/resignMember/input/index.test.tsx
index.tsx
Improve accessibility of form elements
src/feature/mypage/resignMember/input/index.tsx
aria-labelledby
andhtmlFor
.