1- import { expect , test } from '@playwright/test' ;
1+ import { expect , test , type Page } from '@playwright/test' ;
2+
3+ async function warmRoute ( page : Page , path : string ) {
4+ const response = await page . request . get ( path ) ;
5+ expect ( response . ok ( ) ) . toBeTruthy ( ) ;
6+ }
27
38test . describe ( 'Navigation IA' , ( ) => {
49 test ( '@smoke 모바일 하단 네비 4탭이 동작해요' , async ( { page } , testInfo ) => {
5- test . skip ( ! testInfo . project . use . isMobile , '모바일 프로젝트 전용 테스트예요.' ) ;
10+ test . skip (
11+ ! testInfo . project . use . isMobile ,
12+ '모바일 프로젝트 전용 테스트예요.'
13+ ) ;
14+
615 await page . goto ( '/' ) ;
716 await expect (
817 page . getByRole ( 'navigation' , { name : '모바일 하단 네비게이션' } )
918 ) . toBeVisible ( ) ;
1019
11- const nav = page . getByRole ( 'navigation' , { name : '모바일 하단 네비게이션' } ) ;
20+ const nav = page . getByRole ( 'navigation' , {
21+ name : '모바일 하단 네비게이션' ,
22+ } ) ;
1223
1324 const engineeringTab = nav . getByRole ( 'link' , {
1425 name : 'Engineering' ,
1526 exact : true ,
1627 } ) ;
1728 await expect ( engineeringTab ) . toHaveAttribute ( 'href' , '/engineering' ) ;
29+ await warmRoute ( page , '/engineering' ) ;
1830 await page . goto ( '/engineering' ) ;
1931 await expect ( page ) . toHaveURL ( / \/ e n g i n e e r i n g / ) ;
2032
2133 await page . goto ( '/' ) ;
2234 const lifeTab = nav . getByRole ( 'link' , { name : 'Life' , exact : true } ) ;
2335 await expect ( lifeTab ) . toHaveAttribute ( 'href' , '/life' ) ;
36+ await warmRoute ( page , '/life' ) ;
2437 await page . goto ( '/life' ) ;
2538 await expect ( page ) . toHaveURL ( / \/ l i f e / ) ;
2639
2740 await page . goto ( '/' ) ;
2841 const resumeTab = nav . getByRole ( 'link' , { name : 'Resume' , exact : true } ) ;
2942 await expect ( resumeTab ) . toHaveAttribute ( 'href' , '/resume' ) ;
43+ await warmRoute ( page , '/resume' ) ;
3044 await page . goto ( '/resume' ) ;
3145 await expect ( page ) . toHaveURL ( / \/ r e s u m e / ) ;
3246
@@ -37,7 +51,9 @@ test.describe('Navigation IA', () => {
3751 await expect ( page ) . toHaveURL ( / \/ $ / ) ;
3852 } ) ;
3953
40- test ( '@smoke /blog와 /series는 새 경로로 리다이렉트돼요' , async ( { page } ) => {
54+ test ( '@smoke /blog와 /series는 새 경로로 리다이렉트돼요' , async ( {
55+ page,
56+ } ) => {
4157 const blogResponse = await page . goto ( '/blog' ) ;
4258 expect ( blogResponse ?. status ( ) ) . toBe ( 200 ) ;
4359 await expect ( page ) . toHaveURL ( / \/ e n g i n e e r i n g / ) ;
0 commit comments