」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > Vitest、MSW與Playwright在React+Vite+TS項目中的配置 - 第三部分

Vitest、MSW與Playwright在React+Vite+TS項目中的配置 - 第三部分

發佈於2025-04-17
瀏覽:468


1。安裝劇作家

要設置playwright,運行以下命令:


NPM初始化劇作@最新
npm init playwright@latest
您將通過終端中的設置嚮導引導。當提示使用

“將端到端測試放在哪裡?” ,您可以將其設置為src/tests(如較早的教程中的建議)。 [2 將腳本添加到package.json

在您的軟件包中。 [2 Configure Vitest, MSW and Playwright in a React project with Vite and TS - Part 3這使您可以在開發和CI環境中運行測試。

劇作家配置

playwright.config.ts文件應配置如下:

[2

配置的關鍵更改: Configure Vitest, MSW and Playwright in a React project with Vite and TS - Part 3

:這設置了開發服務器的基本URL,因此您無需在每個測試中編寫它。

Weberver

:此塊描述瞭如何啟動開發服務器。除非您在CI環境中,否則它將重複使用已運行的服務器。

Configure Vitest, MSW and Playwright in a React project with Vite and TS - Part 3

testdir

:劇作家應該查找您的e2e tests的目錄(在這種情況下,src/tests/e2e)。

    2。為瀏覽器測試配置MSW
  • 到目前為止,MSW已設置為在Node.js環境中嘲笑API響應。但是,由於劇作家使用真正的瀏覽器進行測試,因此您需要配置MSW以在瀏覽器環境中工作。 創建一個新的JavaScript模塊,該模塊將在基於瀏覽器的測試中註冊MSW服務工作者:
  • [2
  • 3。在開發模式下註冊工人 在開發模式下運行應用程序時啟動MSW Worker,將以下內容添加到您的應用程序的root模塊(例如SRC/Main.tsx):
  • 確保在.env文件中設置Vite_api_mock環境變量:
  • vite_api_mock =“ true”
4。編寫E2E測試

現在您可以為應用程序中的流程編寫E2E測試。這是一個示例劇作家測試:

[2

5。進行測試

運行E2E測試,使用以下命令:

Configure Vitest, MSW and Playwright in a React project with Vite and TS - Part 3

NPM運行測試:E2E:CI

這將在CI模式下執行測試,這對於自動化管道很有用。

版本聲明 本文轉載於:https://dev.to/juan_deto/configure-vitest-msw-and-playwright-in-a-react-project-with-vite-and-ts-part-3-32pe?1如有侵犯,請聯繫[email protected]刪除
最新教學 更多>
  • 如何在其容器中為DIV創建平滑的左右CSS動畫?
    如何在其容器中為DIV創建平滑的左右CSS動畫?
    通用CSS動畫,用於左右運動 ,我們將探索創建一個通用的CSS動畫,以向左和右移動DIV,從而到達其容器的邊緣。該動畫可以應用於具有絕對定位的任何div,無論其未知長度如何。 問題:使用左直接導致瞬時消失 更加流暢的解決方案:混合轉換和左 [並實現平穩的,線性的運動,我們介紹了線性的轉換。...
    程式設計 發佈於2025-04-19
  • 使用jQuery如何有效修改":after"偽元素的CSS屬性?
    使用jQuery如何有效修改":after"偽元素的CSS屬性?
    在jquery中了解偽元素的限制:訪問“ selector 嘗試修改“:”選擇器的CSS屬性時,您可能會遇到困難。 This is because pseudo-elements are not part of the DOM (Document Object Model) and are th...
    程式設計 發佈於2025-04-19
  • 為什麼不使用CSS`content'屬性顯示圖像?
    為什麼不使用CSS`content'屬性顯示圖像?
    在Firefox extemers屬性為某些圖像很大,&& && && &&華倍華倍[華氏華倍華氏度]很少見,卻是某些瀏覽屬性很少,尤其是特定於Firefox的某些瀏覽器未能在使用內容屬性引用時未能顯示圖像的情況。這可以在提供的CSS類中看到:。 googlepic { 內容:url(&...
    程式設計 發佈於2025-04-19
  • 迪拜頂級軟件開發公司 - Blue Ginger Technology
    迪拜頂級軟件開發公司 - Blue Ginger Technology
    [2 作為一家頂級迪拜軟件開發公司,我們優先考慮客戶滿意度,並利用最新技術來實現出色的成果。我們的解決方案旨在與您現有系統無縫集成並提供強大的功能,與您的業務目標完全一致。 準備提升您的數字策略了嗎?立即聯繫Blue Ginger Technology,這是一家領先的迪拜軟件開發公司! 聯繫人:9...
    程式設計 發佈於2025-04-19
  • PostgreSQL查詢為何報“列不存在”錯誤?明明列是存在的!
    PostgreSQL查詢為何報“列不存在”錯誤?明明列是存在的!
    [2 PostgreSQL's "column does not exist" Error: A Case-Sensitivity Issue 即使列明確定義了,也是“不存在”的常見postgresql頭痛是“不存在”錯誤。 這通常源於病例敏感性問題。考慮此示例:[ ...
    程式設計 發佈於2025-04-19
  • SQL Server中如何使用遞歸查詢分組匹配產品?
    SQL Server中如何使用遞歸查詢分組匹配產品?
    sql Server:用於對匹配的產品進行分組的遞歸查詢在名為“匹配”,每個記錄中表示兩個產品之間的匹配。目標是創建一個“組”表,以層次結構捕獲這些匹配。具體來說,“ group_id”列應將最小產品ID存儲在屬於同一組的產品之間。 為此完成此操作,我們可以利用SQL中的遞歸查詢的功能。遞歸查詢...
    程式設計 發佈於2025-04-19
  • 動態傳遞用戶名創建SQL登錄方法
    動態傳遞用戶名創建SQL登錄方法
    Creating Logins with Dynamic Parameters: Overcoming the "@parameter as username" ObstacleIn the pursuit of creating custom Stored Procedures...
    程式設計 發佈於2025-04-19
  • 在細胞編輯後,如何維護自定義的JTable細胞渲染?
    在細胞編輯後,如何維護自定義的JTable細胞渲染?
    在JTable中維護jtable單元格渲染後,在JTable中,在JTable中實現自定義單元格渲染和編輯功能可以增強用戶體驗。但是,至關重要的是要確保即使在編輯操作後也保留所需的格式。 在設置用於格式化“價格”列的“價格”列,用戶遇到的數字格式丟失的“價格”列的“價格”之後,問題在設置自定義單元...
    程式設計 發佈於2025-04-19
  • 版本5.6.5之前,使用current_timestamp與時間戳列的current_timestamp與時間戳列有什麼限制?
    版本5.6.5之前,使用current_timestamp與時間戳列的current_timestamp與時間戳列有什麼限制?
    在時間戳列上使用current_timestamp或MySQL版本中的current_timestamp或在5.6.5 此限制源於遺留實現的關注,這些限制需要對當前的_timestamp功能進行特定的實現。 創建表`foo`( `Productid` int(10)unsigned not ...
    程式設計 發佈於2025-04-19
  • 您可以使用CSS在Chrome和Firefox中染色控制台輸出嗎?
    您可以使用CSS在Chrome和Firefox中染色控制台輸出嗎?
    在javascript console 中顯示顏色是可以使用chrome的控制台顯示彩色文本,例如紅色的redors,for for for for錯誤消息? 回答是的,可以使用CSS將顏色添加到Chrome和Firefox中的控制台顯示的消息(版本31或更高版本)中。要實現這一目標,請使用以下...
    程式設計 發佈於2025-04-19
  • Go web應用何時關閉數據庫連接?
    Go web應用何時關閉數據庫連接?
    在GO Web Applications中管理數據庫連接很少,考慮以下簡化的web應用程序代碼:出現的問題:何時應在DB連接上調用Close()方法? ,該特定方案將自動關閉程序時,該程序將在EXITS EXITS EXITS出現時自動關閉。但是,其他考慮因素可能保證手動處理。 選項1:隱式關閉終...
    程式設計 發佈於2025-04-19
  • Flatten與Ravel:NumPy函數選擇指南
    Flatten與Ravel:NumPy函數選擇指南
    了解Numpy的Flatten和Ravel functions Numpy庫提供兩種方法,Flatten and ravel,以將多維數組轉換為一維數組。但是,出現了一個問題:為什麼要執行相同任務的兩個不同的函數? 相同的輸出,不同的行為 打印(y.ravel()) [1 2 3 4 5 6 7...
    程式設計 發佈於2025-04-19
  • 哪種在JavaScript中聲明多個變量的方法更可維護?
    哪種在JavaScript中聲明多個變量的方法更可維護?
    在JavaScript中聲明多個變量:探索兩個方法在JavaScript中,開發人員經常遇到需要聲明多個變量的需要。對此的兩種常見方法是:在單獨的行上聲明每個變量: 當涉及性能時,這兩種方法本質上都是等效的。但是,可維護性可能會有所不同。 第一個方法被認為更易於維護。每個聲明都是其自己的語句,使...
    程式設計 發佈於2025-04-19
  • 在Android應用中如何使用廣播接收器可靠地檢測網絡連接變化?
    在Android應用中如何使用廣播接收器可靠地檢測網絡連接變化?
    廣播接收器,以檢查Android應用中的Internet連接 問題:重複廣播接收機調用所遇到的常見挑戰是接收器被稱為兩次,即使網絡可能不可接受。這可以歸因於在接收器的清單聲明中添加多個意圖過濾器。要解決此問題,僅使用一個動作進行網絡連接性更改就足夠了,例如: 檢查Internet a...
    程式設計 發佈於2025-04-19
  • MySQL字段值條件連接方法
    MySQL字段值條件連接方法
    mySQL有條件加入Query Quary cupareization ,可以根據指示表的字段的字段的值執行連接的值。 While switch-case statements cannot be directly employed in SQL queries, there are alter...
    程式設計 發佈於2025-04-19

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3