這兩種方式都是對 SilkTest 運用的最基礎的東西,我寫得也比較簡單。國內這方面的資料實在太少,對初學者可能有幫助。
方式一 : Data Driven
1. 新建一個腳本文件 -File -> New -> 4TestScrpit ->Save as -> "smipletest.t"
2. 新建一個普通的testcase CheckSameString, 比較兩個字符串是否相同

3. 新建一個Excel表 ,另存為"TestData.xls"

4. 將普通的testcase轉成Data Driven的testcase
- Workflows-> Data Driven ->SilkTest的Toolbar改變 - 回到剛剛新建的"smipletest.t",單擊“Data Driven Testcase“,選擇 "CheckSimpleString"-> OK button - Create a new file "smipletest.g.t" - Select workbook "TestData.xls" - Add a new Data Driven testcase "DD_CheckSimpleString" - Find/Replace Value ("A"-> Column ValueA; "B"-> Column ValueB)

5.運行smipletest.g.t 腳本文件上的testcase DD_CheckSameString, 第1,2個會print "A=B", 第三個print "A<>B"。
方式二 : SQL和腳本
1. 在 smipletest.t 腳本文件中新增一個的 CheckSmipleString_Advanced 的 testcase。

2. CheckSmipleString_Advanced定義了兩個參數,所以不能直接運行testcase, 這里可以跟pln關聯
3. 新增一個 Testpln 文件: New-> Testpln -> Save as "smiplepln.pln" -> 輸入相應Testplan, 如圖

4. 鼠標放在 "Check Smiple String Advanced" 行,選擇Testplan-> Detail , 出現 "Testplan Detail" 對話框-> 選擇Scripts "smipletest.t", Testcases "CheckSameString_Advanced" -> OK -> OK

5. 最后加上兩個參數值

6. 這樣就可以執行這個Testplan了
7. 執行結果

比較:
其實這兩種方式非常相似。但是Data Driven的方式不能控制循環語句,不能自由的獲取 Excel 中某行某列的值。但是方式二就比較自由,循環是可控制的。并且從速度上而言,個人感覺方式二要快很多。(這個簡單的例子可能看不出來,但是如果是 GUI 操作的測試就比較明顯了) |