[Taiko] 處理Request/Response相關功能


Taiko除了可以做網頁自動化還可以針對網頁的Request/Response做一些處理的API

1.  Blocking requests 

以下範例是連線到google並且blocking以下這張圖
await openBrowser();
await intercept("https://www.gstatic.com/images/branding/googlemic/2x/googlemic_color_24dp.png");
await goto("www.google.com.tw");

2. Request取代

以下範例是連線到google並且將換成
await openBrowser();
await intercept("https://www.gstatic.com/images/branding/googlemic/2x/googlemic_color_24dp.png","https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png");
await goto("www.google.com.tw");

3. Mock Response

假設你有一個api回傳值是{"title":"hello"}但是想改成這樣{"test": "XXXXXXXXXX" }的話
,可以用以下的方式
await openBrowser();
await intercept("http://localhost:3000/api", {body: {"test": "XXXXXXXXXX"} });
await goto("http://localhost:3000");


4. Override request (Overrides google4_hdpi.png url to return female.png can be seen in map)

await openBrowser();
await intercept("https://maps.gstatic.com/mapfiles/api-3/images/google4_hdpi.png",(request) => {request.continue({url:"http://localhost:3000/assets/images/female.png"})});
await goto("http://localhost:3000");

留言

熱門文章