Playwright使用Typescript實現在測試case檔案中呼叫另一個檔案中的方法

coffee~發表於2024-11-09

前提:

(1)安裝了nodejs

(2)建立了測試目錄

(3)使用Vscode安裝了Playwright外掛

可以參考官方文件:https://playwright.dev/docs/getting-started-vscode

在vscode介面最左側的按鈕選擇Explorer, 建立一個與tests目錄同級的目錄methods,並在methods目錄下建立檔案method1.ts,

目錄結構如下:

在檔案method1.ts中定義方法

export async function testArea1({page}, locator1:string, locator2:string, expectText1:string){
  await page.goto(https://www.google.com);
  await page.click(locator1);
  await expect(page.locator2).toHaveText(expectText1);
}

在tests目錄下的測試case, 即.spec.ts檔案中使用這個方法

需要新增import語句,注意目錄層級問題,./表示同一級目錄, ../表示上一級目錄


import { test, expect } from '@playwright/test';

import { testArea1 } from '../methods/method1';

test('測試case1', async ({ page }) => {
  await page.goto('https://playwright.dev/');

  // 這裡的'div1', 'div2'為虛擬碼,需要換成頁面元素定位locator字串
  await testArea1({page}, 'div1', 'div2', 'google');
});

注意這裡的'div1', 'div2'為虛擬碼,需要換成頁面元素定位locator字串

相關文章