invocationCount和invocationTimeOut

這篇咱們來學習下@Test中另外兩個屬性invocationCount和invocationTimeOut,前面我介紹了timOut這個屬性,知道是超時監控的功能。一樣,本篇兩個屬性和這個差很少,只不過是監控運行屢次同一個用例的總耗時是否達到設置的最大值。java

1.invocationCount服務器

       字面意思就是調用的次數統計,這個屬性是的英文解釋是:The number of times this method should be invoked. 哦,原來就是這個測試用例被調用執行的次數。說明這個屬性能夠設置一個用例能夠重複跑屢次,這樣理解就好。性能

2. invocationTimeOut學習

        字面意思是調用的超時,看看英文的解釋:The maximum number of milliseconds this test should take for thecumulated time of all the invocationcounts. This attribute will be ignored ifinvocationCount is not specified.這句話,說了兩個意思,第一個是設置一個最大的毫秒數來計算執行屢次後總共耗時多少,耗時值不能超過設置的最大毫秒數。第二個意思是說,這個屬性是和invocationCount結合使用纔會工做。測試

瞭解了兩個屬性的基本含義,咱們就看看代碼舉例。優化

package com.java.learn;
 
import org.testng.annotations.Test;
 
/**
 * create by Anthony on 2017/10/31
 */
public class TimeoutTest {
 
    @Test(invocationCount = 5, invocationTimeOut = 5100)
    public void loginTest() throws InterruptedException{
 
        Thread.sleep(1000);
        System.out.println("login test");
 
    }
}


代碼做用:設置了執行次數數5次,5次執行總共耗時不能超過5100毫秒,不然拋出中斷異常。this

看看運行結果:.net

 

 

       這兩個參數有什麼做用呢?在接口測試中,或者性能測試。咱們須要測試某一個功能的穩定性。例如,一個支付接口,調用一次,可以在1秒完成。那麼若是調用100次,1萬次,甚至更屢次數。我想,你們都知道,隨着服務器壓力增長,不可能每次接口執行都是1秒。例如,我測試支付接口10次,總響應時間不能超過13秒。若是測試超過13秒,說明這個接口性能角度,或者壓力測試角度,穩定性角度是有缺陷的,須要開發去想辦法優化。blog


---------------------
做者:Anthony_tester
來源:CSDN
原文:https://blog.csdn.net/u011541946/article/details/78483864
版權聲明:本文爲博主原創文章,轉載請附上博文連接!接口

相關文章
相關標籤/搜索