前端自動化測試

2021-10-24 08:36:47 字數 2219 閱讀 2034

自動化測試框架jest

安裝jest

npm install [email protected]

.0-d

修改package.json中的test

"scripts"

:,

執行

npm run test
//配置jest,執行會生成jest.config.js的js檔案

npx jest --init

//生成coverage資料夾的測試報告

npx jest --coverage

一般我們都不會使用commonjs語法,會使用import和export進行匯出和引入

export function add

(a,b)

import from './math'

;test

('測試加法 3+7',(

)=>

)

這樣我們在執行npm run test的時候就會報錯,因為node不識別import的語法,所以jest也無法識別,可以通過安裝babel來改善**

npm install @[email protected]

.5 @[email protected]

.5-d

使用babel需要在專案的根目錄下建立.babelrc檔案,

}]

]}

jest中的匹配器:

tobe()

:只匹配內容是否一樣,涉及引用

toequal()

:只匹配內容是否一樣,不會涉及引用

tobenull()

:匹配值是否是null,是則通過,不是則否

tobeundefined()

:匹配值是否是undefined

tobedefined()

:匹配值是否被定義

tobetruthy()

:匹配值是否是true

tobefalsy()

:匹配值是否是false

not:取反

用法:test

('not匹配器',(

)=>

)

//數字相關的匹配器

tobegreaterthan()

:希望匹配值比某個值大

例:test

('tobegreaterthan匹配器',(

)=>

)tobelessthan()

:希望匹配值比某個值小

tobegreaterthanorequal()

:希望匹配值比大於等於某個值

tobelessthanorequal()

:希望匹配值比小於等於某個值

tobecloseto()

:匹配值是浮點數時

例:test

('tobecloseto匹配器',(

)=>

)

和字串相關的匹配器

tomatch()

:匹配值都否包含某個值

和陣列相關的匹配器

tocontain()

:匹配值是否包含某一項

tothrow()

:匹配項是否丟擲異常

非同步函式的測試:

非同步函式

import axios from "axios"

import from "[email protected]@jest-mock"

export const fetchdata =

(fn)

=>

)}

測試非同步函式

import from "./fetcdata"

test

("fetchdata 返回結果為"

,(done)

=>

)done()

;})}

)//失敗情況下的測試非同步函式

test

("fetchdata 返回結果為404"

,(done)

=>)}

)

自動化測試 web自動化測試

自動化 由機器裝置代替人為完成制定目標的過程 優點 提高工作效率 減少勞動力 產品規格同一標準 批量生產 自動化測試 讓程式代替人為去驗證程式功能的過程,即在預設條件下執行程式系統 流程確定 搭建自動化框架 編寫測試用例,將其轉化為soupui 介面 自動化測試指令碼 執行自動化測試指令碼 輸出執行...

測試自動化 自動化測試的定義

相關術語 automated testing test tool,automated testing test suite,automated testing test script等.具體參見 http en.wikipedia.org wiki test automation 推薦書籍 1 軟體...

測試自動化

自動化測試有兩種含義 開發過程的自動化單元測試和功能驗證階段的自動化黑盒測試。這兩者融合到daily build中,是daily build的最重要核心。daily build和自動化單元測試另文詳述,此處主要說說自動化功能測試。自動化測試的投入產出比以及實際應用效果其實不高 自動化測試作為提高測試...