global 和 local 的區別

2021-08-25 21:39:32 字數 2572 閱讀 7553

global 和local 的區別

global 是全域性的!有幾行資料程式就要回放幾次!!不能重新設定!!

local 是區域性的!有幾行資料action 就要回訪幾次!!

設定action的重複次數的操作:反擊action,選擇action call property,即可進行選擇.

下面有幾種情況:

1.當global 有不止一行的資料,action call property->run on all rows

程式每次執行時,action中的每行都要執行

2.當global 有不止一行的資料,action call property->runone iteration only

而且global的行數》action的行數,當action執行到最後一行後,不管此時global 的行數為幾,下次回放時action都執行最後一行!

如果global的行數的行數,action就執行不到最後一行

3.action call property->run from rows to rows,就結合上面所說的理解吧!!

希望能給大家幫上忙,幫我頂一下!!第一次回答問題!

更正一下

global的重複次數在test->run中設定

其實對datatable的操作可以很靈活……

由qtp自動生成的語句是這樣的:

datatable("col", dtlocalsheet)

datatable("col", dtglobalsheet)

其中,dtlocalsheet就是當前action的datatable,dtglobalsheet就是global的datatable,col是列名

還有很多寫法,比如

datatable("col", "action2")

就是讀取action2的col列。

你完全可以讀取另乙個action的datatable,而不需要跨action傳遞變數,使用datatable比變數更方便,因為結束後能在result裡看到執行時的值

你可以在乙個action裡讀取另外乙個action的列,但是要注意另外乙個action的當前行

比如你在action1裡讀取action2的某列,如果action1執行到第二行,你讀取的action2還是第一行的資料,解決辦法就是寫上這句:

datatable.getsheet("action2").setcurrentrow(2)

你也可以用getcurrentrow來獲取action1的行,然後再用setcurrentrow來保持兩個action的當前行一致:

currrow = datatable.getsheet("action1").getcurrentrow

datatable.getsheet("action2").setcurrentrow(currrow)

還有一種寫法:

datatable(1, "action2")

這樣就是讀取action2的第一列,不管第一列叫什麼名字,都能讀

這樣就很方便,比如:

for i = 1 to 10

msgbox datatable(i, "action2")

next

這樣就能迴圈讀取action2的1~10列了

同樣,表也可以用數字代替:

datatable(1, 2)

這樣就是讀取第二個action表的第一列

論壇上有人問到這個問題,順便整理一下。file>test settings中run標籤控制globalsheet的執行,每個action的call properties控制對應localsheet的執行。很多人碰到的問題都是忽略了在讀取測試資料時,實際上是有這兩個控制引數的。兩者的組合如下:

假設globalsheet和localsheet的資料如下:

globalsheet有3行資料:1,2,3

localsheet有3行資料:a,b,c

1.global setting = run on all rows

local setting = run on all rows

執行:1a,1b,1c,2a,2b,2c,3a,3b,3c

2.global setting = run on all rows

local setting = run one iteration only

執行:1a,2b,3c

3.global setting = run on all rows

local setting = run from row 1 to 2

執行:1a,1b,2a,2b,3a,3b

4.global setting = run one iteration only

local setting = run on all rows

執行:1a,1b,1c

5.global setting = run one iteration only

local setting = run one iteration only

執行:1a

6.global setting = run one iteration only

local setting = run from row 1 to 2

執行:1a,1b

QTP引數化Global和Local的區別

軟體測試工具qtp引數化global和local的區別 關於qtp的datatable的使用,有global和action之分,以下是他們的一些區別 global 是全域性的,有幾行資料程式就要回放幾次,不能重新設定。local 是區域性的,有幾行資料action 就要回放幾次。設定action的重...

perl中my與local的區別

x 9 sub mm sub gg my sub gg local gg my gg local print x 輸出結果是 call my 11 9 call local 20 20 9 可以看出,local函式在建立全域性變數的乙個區域性例項後即可 將它傳遞給任何子例程並繼續進行區域性初始賦值。...

Utc時間跟Local時間的區別

utc即世界標準時間,北京時間與utc的時差為 8,也就是utc 8 北京時間 一般儲存在資料庫裡是存utc時間,然後在頁面再轉為local時間。js把utc時間轉為local時間的方法如下 var localdate new date utcdate.tostring local時間跟utc時間的...