**\_\_intSum
**
intSum 函數可用于計算兩個或多個整數值的總和。
引用名稱是可選的, 但它不能是有效的整數。
* {\_\_intSum(2,5,MYVAR)} 將返回 7 (2 5) 并將結果存儲在 MYVAR 變量中。因此 {MYVAR} 將等于7。
* ${\_\_intSum(2,5,7)} 將返回 14 (2 5 7) 并將結果存儲在 MYVAR 變量中。
* {\_\_intSum(1,2,5,${MYVAR})} 如果 MYVAR 值等于8、1 2 5 {MYVAR}, 則返回16
**\_\_longSum**
longSum 函數可用于計算兩個或多個長值的總和, 而當您知道值不會在間隔-2147483648 到2147483647中時, 請使用此方法而不是 \_\_intSum。
* {\_\_longSum(2,5,MYVAR)} 將返回 7 (2 5) 并將結果存儲在 MYVAR 變量中。因此 {MYVAR} 將等于7。
* ${\_\_longSum(2,5,7)} 將返回 14 (2 5 7) 并將結果存儲在 MYVAR 變量中。
* {\_\_longSum(1,2,5,${MYVAR})} 如果 MYVAR 值等于8、1 2 5 {MYVAR}, 則返回16
**\_\_StringFromFile
**
StringFromFile 函數可用于從文本文件讀取字符串。這對于運行需要大量可變數據的測試非常有用。例如, 在測試銀行應用程序時, 可能需要使用不同帳號的100s 或1000s。
另請參閱可更易于使用的 CSV 數據集配置測試元素。但是, 當前不支持多個輸入文件。 每次被調用時, 它會從文件中讀取下一行。所有線程共享相同的實例, 因此不同的線程將得到不同的行。當到達文件末尾時, 它將從一開始重新開始讀取, 除非已達到最大循環計數。如果在測試腳本中有多個對該函數的引用, 則每個文件都將獨立打開它, 即使文件名相同。\[如果該值將再次用于其他位置, 請對每個函數調用使用不同的變量名。
函數實例在線程之間共享, 并且該文件 (重新打開) 由任何線程碰巧需要下一行輸入, 因此使用 threadNumber 作為文件名的一部分將導致不可預知的行為。
如果打開或讀取文件時出現錯誤, 則該函數將返回字符串 '\*\* 錯誤 \*\*'
* ${\_\_StringFromFile(PIN#'.'DAT,,1,2)}-讀取 PIN1.DAT, PIN2.DAT
* ${\_\_StringFromFile(PIN.DAT,,,2)}-讀取 PIN2.DAT 兩次
**\_\_machineName
**
machineName 函數返回本地主機名。這將使用 Java 方法 InetAddress getLocalHost () 并將其傳遞到 getHostName ()
Examples:
${\_\_machineName()} 將返回計算機的主機名
${\_\_machineName} 將返回計算機的主機名
**\_\_machineIP**
machineIP 函數返回本地 IP 地址。這將使用 Java 方法 InetAddress getLocalHost () 并將其傳遞到 getHostAddress ()
* ${\_\_machineIP()} 將返回計算機的 IP 地址
* ${\_\_machineIP} 將返回計算機的 IP 地址
**\_\_javaScript**
javascript 函數執行一條 javascript (不是 Java) 代碼并返回其值 JMeter javascript 函數調用獨立的 javascript 解釋器。
Javascript 被用作腳本語言, 因此您可以進行計算等。
javaScript 不是 JMeter 中性能最好的腳本語言。如果您的計劃需要大量的線程, 建議使用 jexl3 或 \_\_groovy 函數。
${\_\_javaScript('${sp}'.slice(7\\,99999))} 7后的逗號被轉義。
**Examples:
**
* ${\_\_javaScript(new Date())} 將返回 Sat 2016年1月09日 16:22:15 GMT 0100 (英語)
* ${\_\_javaScript(new Date(),MYDATE)} 將返回星期六 2016年1月09日 16:22:15 GMT 0100 (CET) 和存儲在可變 MYDATE
* ${\_\_javaScript(Math.floor(Math.random()\*(${maxRandom}+1)),MYRESULT)}
將使用 maxRandom 變量, 返回一個介于0和 maxRandom 之間的隨機值, 并將其存儲在 MYRESULT
**\_\_Random**
隨機函數返回位于給定最小值和最大數值之間的隨機數。
${\_\_Random(0,10)} 將返回介于0和10之間的隨機數
{\_\_Random(0,10, MYVAR)} 將返回一個介于0和10之間的隨機數字, 并將其存儲在 MYVAR 中。 {MYVAR} 將包含隨機數
**\_\_RandomDate**
RandomDate 函數返回位于給定開始日期和結束日期值之間的隨機日期。
* ${\_\_RandomDate(,,2050-07-08,,)}將返回到現在和2050-07-08 之間的隨機日期。例如2039-06-21
* ${\_\_RandomDate(dd MM yyyy,,08 07 2050,,)}將返回一個自定義格式的隨機日期, 如 04 03 2034
**\_\_RandomString
**
RandomString 函數返回一個隨機長度字符串, 使用字符在字符中使用。
* ${\_\_RandomString(5)}將返回一個隨機字符串的5個字符, 可讀或不
* ${\_\_RandomString(10,abcdefg)}將返回一個隨機字符串10字符從 abcdefg 集, 如 cdbgdbeebd 或 adbfeggfad,..。
* ${\_\_RandomString(6,a12zeczclk, MYVAR)} 將返回從 a12zeczclk 集選取的隨機字符串6個字符, 并將結果存儲在 MYVAR 中, MYVAR 將包含字符串, 如2z22ak 或 z11kce..。
**\_\_RandomFromMultipleVars
**
RandomFromMultipleVars 函數根據源變量提供的變量值返回一個隨機值。
* ${\_\_RandomFromMultipleVars(val)}將返回一個基于變量的內容的隨機字符串考慮到它們是否是多值或不
* ${\_\_RandomFromMultipleVars(val1|val2)} 將返回一個隨機字符串基于變量的內容 val1 和 val2 考慮到它們是否是多值或不
* ${\_\_RandomFromMultipleVars(val1|val2, MYVAR)}將返回一個基于變量內容的隨機字符串 val1 和 val2 考慮到它們是否是多值的, 并將結果存儲在 MYVAR
**\_\_UUID
**
UUID 函數返回一個偽隨機類型4通用唯一標識符 (uuid)。
${UUID()}將返回 UUIDs 的格式: c69e0dd1-ac6b-4f2b-8d59-5d4e8743eecd
**\_\_CSVRead
**
CSVRead 函數從 CSV 文件中返回一個字符串 (雞毛 StringFromFile) 注意: JMeter 支持多個文件名。
首次遇到文件名時, 文件將被打開并讀取到內部數組中。如果檢測到空行, 則將其視為文件的末尾-這允許使用尾隨注釋。 所有對同一文件名的后續引用都使用相同的內部數組。注意文件名大小寫對函數很重要, 即使操作系統不關心, 因此 CSVRead (.txt, 0) 和 CSVRead (abc, 0) 將引用不同的內部數組。 '\* 別名' 功能允許多次打開同一文件, 并且允許更短的文件名。 每個線程都有自己的內部指針到文件數組中的當前行。當線程第一次引用該文件時, 它將被分配到數組中的下一個可用行, 因此每個線程將從所有其他線程訪問其他行。\[除非有比數組中的行多的線程。
默認情況下, 函數在每個逗號處拆分該行。如果要輸入包含逗號的列, 則需要將分隔符更改為不出現在任何列數據中的字符, 通過設置屬性: csvread. 分隔符
例如, 可以按如下方式設置一些變量:
> COL1a ${\_\_CSVRead(random.txt,0)}
> COL2a {\_\_CSVRead(random.txt,1)}{\_\_CSVRead(random.txt,next)}
> COL1b ${\_\_CSVRead(random.txt,0)}
> COL2b {\_\_CSVRead(random.txt,1)}{\_\_CSVRead(random.txt,next)}
這將讀取一行中的兩列, 以及下一個可用行中的兩列。如果在相同的用戶參數前處理器上定義了所有變量, 則這些行將是連續的。否則, 另一個線程可能會抓取下一行。
該函數不適合用于大型文件, 因為整個文件存儲在內存中。對于較大的文件, 請使用 CSV 數據集配置元素或 StringFromFile。
**\_\_property
**
屬性函數返回 JMeter 屬性的值。如果找不到屬性值, 并且未提供默認設置, 則返回屬性名稱。提供默認值時, 不需要提供函數名-參數可以設置為 null, 并且將被忽略。
* ${\_\_property(user.dir)} - 返回值為 user.dir
* ${\_\_property(user.dir,UDIR)} - 返回值為user.dir 并保存在 UDIR
* ${\_\_property(abcd,ABCD,atod)} - 返回值屬性為 abcd (或 "atod"如果沒有定義) 并保存在ABCD中
* ${\_\_property(abcd,,atod)} - 返回值屬性為 abcd (或 "atod"如果沒有定義) 但不保存它
- 接口測試
- 5.1 postman 接口測試簡介
- 5.2 postman 安裝
- 5.3 postman 創建請求及發送請求
- 5.4 postman 菜單及設置
- 5.5 postman New菜單功能介紹
- 5.6 postman 常用的斷言
- 5.7 請求前腳本
- 5.8 fiddler網絡基礎及fiddler簡介
- 5.9 fiddler原理及使用
- 5.10 fiddler 實例
- 5.11 Ant 介紹
- 5.12 Ant 環境搭建
- 5.13 Jmeter 簡介
- 5.14 Jmeter 環境搭建
- 5.15 jmeter 初識
- 5.16 jmeter SOAP/XML-RPC Request
- 5.17 jmeter HTTP請求
- 5.18 jmeter JDBC Request
- 5.19 jmeter元件的作用域與執行順序
- 5.20 jmeter 定時器
- 5.21 jmeter 斷言
- 5.22 jmeter 邏輯控制器
- 5.23 jmeter 常用函數
- 5.24 soapUI概述
- 5.25 SoapUI 斷言
- 5.26 soapUI數據源及參數化
- 5.27 SoapUI模擬REST MockService
- 5.28 Jenkins的部署與配置
- 5.29 Jmeter+Ant+Jenkins 搭建
- 5.30 jmeter腳本錄制
- 5.31 badboy常見的問題