App下載

如何進(jìn)行數(shù)據(jù)驅(qū)動測試?katalon怎么實現(xiàn)?

猿友 2021-07-08 14:09:44 瀏覽數(shù) (3130)
反饋

小編在之前分享了一篇關(guān)于 katalon 這個工具的文章,為了避免篇幅過長,同時為了將其與seleniumIDE最大的突出點更好的展現(xiàn)出來,小編決定另起一篇文章進(jìn)行介紹。接下來這篇文章,小編就來介紹一下 katalon 數(shù)據(jù)驅(qū)動要怎么做吧!

什么是數(shù)據(jù)驅(qū)動測試

相信聰明的小伙伴看到這個詞大概也能猜出來什么是數(shù)據(jù)驅(qū)動測試了吧?簡單的來說,數(shù)據(jù)驅(qū)動測試是一種測試用例簡化的方法。比如說,原來登陸測試,工程師需要測試多個賬號,每個賬號算一個測試用例,這樣就會產(chǎn)生很多測試用例,而數(shù)據(jù)驅(qū)動測試的思想,就是將相同的邏輯步驟提取出來,使用變量替代用例中不同的參數(shù)(這樣的操作是不是有點像函數(shù)?)。然后將之前的不同的參數(shù)收集起來作為一個數(shù)據(jù)池,當(dāng)需要執(zhí)行對應(yīng)的測試用例的時候,只需要把對應(yīng)的參數(shù)傳進(jìn)去就可以了。

以一個簡單的登陸為例,登陸流程為,打開網(wǎng)頁->輸入賬號->輸入密碼->點擊登陸->登陸成功。假設(shè)我們需要測試十個賬號,那么就會出現(xiàn)十個測試用例,如果采用數(shù)據(jù)驅(qū)動測試的話,那就是一個測試用例+10組數(shù)據(jù),在用例管理上就大大提高了效率。

katalon recorder 怎么做數(shù)據(jù)驅(qū)動測試

katalon界面

可以看到katalon最下方有一排的控制臺,其中我們只需要關(guān)注variable 和data driven這兩個窗口即可,數(shù)據(jù)驅(qū)動的相關(guān)功能都在這里進(jìn)行控制。

第一步,錄制一個案例

我們簡單的錄制一個案例,具體流程如下:打開百度->輸入數(shù)據(jù)(這里我們輸入的數(shù)據(jù)為W3Cschool,另外在程序中這里被拆分成兩步,一步先點擊輸入框,第二步才是輸入數(shù)據(jù))->點擊登陸。腳本錄制截圖如下:

腳本錄制

上面就是錄制的腳本,其實我們可以發(fā)現(xiàn),紅框內(nèi)部的指令,每個測試案例都會不一樣的(也就是我們要提取出來的數(shù)據(jù))而紅框里面的綠框,是我們需要插入的數(shù)據(jù)值。

第二步,使用變量替代

我們可以看到上圖的綠框是固定值,但我們的目的是讓他變成參數(shù),所以第二步是使用變量替代原有的value值。

設(shè)定變量

如上圖所示,我們將w3cschool 的值設(shè)為?${keyword}?。

第三步,使用循環(huán)腳本包圍重復(fù)執(zhí)行項。

在上述的腳本中插入循環(huán)腳本。在命令行前添加loadVars命令,在命令行后添加endLoadVars。

插入循環(huán)

第四步,添加數(shù)據(jù)池

在循環(huán)腳本的開始命令中的target添加數(shù)據(jù)池。

添加數(shù)據(jù)驅(qū)動

 關(guān)于數(shù)據(jù)池,更多內(nèi)容在下一點介紹。

添加完數(shù)據(jù)驅(qū)動就可以執(zhí)行了。

如何做數(shù)據(jù)池

在上面流程的第四步中,需要導(dǎo)入一個數(shù)據(jù)池,這個數(shù)據(jù)池怎么做呢?首先,katalon 支持兩種方式的導(dǎo)入,一種是JSON的導(dǎo)入,一種是csv的導(dǎo)入,兩種數(shù)據(jù)池的制作首先要確定一件事:調(diào)用方希望獲取什么樣的數(shù)據(jù)。

以上述例子為例,我們命名了一個變量叫keyword(在腳本中使用?${keyword}?取出),所以我們的數(shù)據(jù)池的一個關(guān)鍵屬性是keyword。

在JSON中,數(shù)據(jù)采用鍵值對的方式存儲,所以每一條數(shù)據(jù)都要帶上keyword這個屬性名,所以對應(yīng)的JSON應(yīng)該是這樣的:

[
  {
    "keyword": "編程獅" 
  },
  {
   "keyword": "小行動"
  },
   {
   "keyword": "六項精進(jìn)"
  }
]

在csv中(csv可以使用excel打開),只需要將第一行命名為keyword就可以了。

csv文件

 注意,請注意數(shù)據(jù)池的編碼字符集,不然可能會出現(xiàn)亂碼。

添加數(shù)據(jù)池

做完數(shù)據(jù)池后需要將其添加到data driven中。

添加數(shù)據(jù)池

在data driven面板上的右邊,可以添加CSV格式和JSON格式的數(shù)據(jù)池,點擊即可選擇做好的數(shù)據(jù)池添加。

添加完的數(shù)據(jù)池就可以在上述的第四步中使用了。

其他

在做完上述步驟后,可以看到當(dāng)前代碼用到的變量值和其屬性,方便開發(fā)者進(jìn)行代碼調(diào)試。

變量窗口

小結(jié)

通過上面的學(xué)習(xí),我們可以學(xué)會katalon的數(shù)據(jù)驅(qū)動測試。在成規(guī)模成體系的軟件測試過程中,數(shù)據(jù)驅(qū)動測試是相當(dāng)重要的,小伙伴們要是想了解相關(guān)的內(nèi)容知識,可以持續(xù)關(guān)注W3C技術(shù)頭條的后續(xù)內(nèi)容。小編會持續(xù)進(jìn)行介紹。


0 人點贊