溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Fitnesse使用系列五

發(fā)布時(shí)間:2020-06-11 00:03:54 來源:網(wǎng)絡(luò) 閱讀:496 作者:jch_zhao 欄目:軟件技術(shù)

腳本表

如果說前面介紹的幾種表格都是單步驟、單方法。Script table就是一系列的多步驟操作了,正如名稱所代表的含義。

表頭的第一個(gè)格加script:前綴,也可以只是一個(gè)script,后面緊跟的單元格作為類名。后面跟構(gòu)造參數(shù)。下面的行每行代表一個(gè)操作。允許的操作類型有:執(zhí)行方法、檢查結(jié)果、顯示輸出。

執(zhí)行方法包括方法名稱和參數(shù)。相當(dāng)奇葩的設(shè)計(jì)是方法名稱可以和參數(shù)交錯(cuò)放入表格中。如我下面的示例中this is a method in code是分別從1、3、5列中組合起來的,而2、4、6列是參數(shù)。還是用另外一種寫法更符合正常習(xí)慣些——第一列放方法名(緊跟一個(gè);),后面依次放參數(shù)。

檢查結(jié)果用四個(gè)詞組作為第一列的內(nèi)容:check、check not、ensure、reject,分別表示比對(duì)返回結(jié)果與表格內(nèi)容相同、與表格內(nèi)容不同、返回的是true、返回的是false

顯示輸出用show單詞,在第一列,后面是方法名和參數(shù)。這一行只顯示輸出不做驗(yàn)證。所以結(jié)果表格中會(huì)多出一列。

示例:

script:script.zjc.com.ScriptDemo

zjc

20

this is

10

a method

20

in code

30

check

get age

80

this is a method in code;

15

25

35

check not

get age

200

show

get name

5

reject

reject method

5

fixture:

package script.zjc.com;
public class ScriptDemo {
	private String name;
	private int age;
	public ScriptDemo(String name,int age){
		this.name=name;
		this.age=age;
	}
	
	public void thisIsAMethodInCode(int a,int b,int c){
		age=age+a+b+c;
	}
	
	public int getAge(){
		return age;
	}
	public String getName(int a){
		return name;
	}
	
	public boolean rejectMethod(int a){
		return false;
	}
}

在我看來,script table和decision table是最重要的兩種表格,decision table可以實(shí)現(xiàn)大部分的數(shù)據(jù)驗(yàn)證,而script table可以搭配其他工具一起使用,實(shí)現(xiàn)很多奇妙的、超出預(yù)期的功能。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI