由於 Rspack 混合使用 Rust 和 Node.js 程式碼,因此每個程式碼都使用不同的測試策略。
Rust 測試案例僅適用於單元測試。若要測試完整的建置過程,請新增 Node.js 測試案例。
您可以使用 ./x test rust
或 cargo test
來執行 Rust 程式碼的測試案例。
測試案例寫在 Rust 程式碼中。例如
如需更多資訊,請參閱:Rust:如何撰寫測試
Node.js 測試提供三個測試套件
Rspack 將整個 Webpack 測試套件複製到 tests/webpack-test
資料夾中,以檢查 Webpack 的相容性。如果您需要新增新的測試案例,建議先檢查此資料夾中是否已存在該案例。您可以移除 test.filter.js
檔案或將其傳回值修改為 true
,以啟用測試案例。
您可以在根資料夾中執行 ./x test webpack
或 pnpm run test:webpack
來執行 Webpack 測試。
如果您遇到任何問題,請勿修改 Webpack 測試案例的原始程式碼。您可以複製它,並按照Rspack 測試中的說明,在 packages/rspack-test-tools/tests
中建立新的測試案例。
如需更多詳細資訊,請參閱:Webpack 測試。
Rspack 的測試案例儲存在 packages/rspack-test-tools/tests
資料夾中,包括獨特的測試案例,以及需要修改以適用於 Webpack 和 Webpack 外掛的案例。
您可以在根資料夾中執行 ./x test unit
或 pnpm run test:unit
來執行 Rspack 測試。
您也可以前往 packages/rspack-test-tools
資料夾,執行 npm run test
來執行測試案例並新增一些引數
-u
,例如 npm run test -- -u
-t
,例如 npm run test -- -t config/asset
,僅執行來自 packages/rspack-test-tools/configCases/asset
資料夾的測試案例(config
會自動對應到 configCases
,其他資料夾的工作方式類似)。模式比對支援 regex,詳情請參閱 jest。如需更多詳細資訊,請參閱:Rspack 測試。
由於實作差異和效能考量,Rspack 將在內部支援一些 Webpack 外掛。同樣地,這些外掛的測試套件會複製到 tests/plugin-test
資料夾,以測試外掛的相容性。
您可以在根資料夾中執行 ./x test plugin
或 pnpm run test:plugin
來執行 Webpack 外掛測試。
在大多數情況下,即使您修改了對應外掛的功能,您只需要按照Rspack 測試中的說明,新增新的測試案例即可。
只有當您原生實作新的 Webpack 外掛並需要複製其測試案例時,您才能將它們新增到此套件中。
如需更多詳細資訊,請參閱:Webpack 外掛測試。