将每周读书与学习相结合,可以有效地提升个人素养和知识水平。以下是一些建议,帮助您实现这一目标:1. **制定计划**: - 每周选择一本或多本书籍,涵盖不同领域,如文学、历史、科技、哲学等。 - 确定每天如早晨起床后、午休时间或睡前。2. **选择书籍**
摘要:每周读书与学习是由清华大学出版社出版的《JMeter核心技术、性能测试与性能分析》一书的作者推出,分享作者多年的IT从业经历,希望对很多计算机科学技术IT类专业毕业生以及IT从业者有所帮助。 1、函数助手 函数助手是Jmeter提供的一个非
每周读书与学习是由清华大学出版社出版的《JMeter核心技术、性能测试与性能分析》一书的作者推出,分享作者多年的IT从业经历,希望对很多计算机科学技术IT类专业毕业生以及IT从业者有所帮助。
1、函数助手
函数助手是Jmeter提供的一个非常有用的工具,尤其是在性能测试脚本的编写中,由于经常需要用到一些特有的函数来生成性能测试脚本中需要的数据,函数助手就可以提供这方面的帮助。
函数助手位于Jmeter菜单的工具->函数助手对话框下面,如下图所示,也可以通过快捷键Ctrl+Shift+F1来打开函数助手对话框。
函数助手中包含的常见函数如下,可以从函数助手界面中的下拉框中选择到如下介绍的函数。
BeanShell:使用BeanShell脚本语言来生成BeanShell类型的函数,比如如下图所示,通过BeanShell脚本语言来计算123*456的值,并且将结果赋值给var_beanshell变量的操作,就可以通过函数助手来生成最终的函数表达式为${__BeanShell(123*456,var_beanshell)}。
changeCase:用于将一个给定的字符串转换为指定模式(包括UPPER、LOWER、CAPITALIZE)下的字符串,比如${__changeCase(string,UPPER,var_result)} 用于将小写的string转换为大写的STRING,并且赋值给var_result这个变量,如下图所示。
regexFunction:通常用于通过正则表达式来解析相应的结果字符串。
counter:即为计数器,在每次被调用时都会产生一个新的数字,从1开始,每次调用一次就递增加1,计数器支持配置为每个线程用户具有一个自己单独的计数器,也可以配置为多个线程用户共用一个计数器,计数器是通过整形变量来保存的,所以计数器的最大值为2147483647。
threadNum:用于返回当前正在执行的线程的编号,在每个线程组中threadNum具有唯一性。
threadGroupName:用于返回正在执行的线程组的名称。
intSum:用于计算两个或多个整数值的和。
longSum:计算两个或多个long型数字(长值)的和,超过整形长度(-2147483648到2147483647的区间内)就应该使用longSum来进行计算。
StringFromFile:用于从文本文件中读取字符串,每次调用它时,它都会从文件中读取下一行,并且所有线程用户共享同一个实例,所以每个线程用户都会读取到不同的行,如果当读取到文件末尾的最后一行时,它将会从头开始重新再次读取,需要注意的是如果性能测试脚本中有多个对该函数的引用,即使打开的文件名相同,每个引用也都会独立打开一个文件。
machineName:用于返回本地主机名。
machineIP:用于返回本地IP地址。
javaScript:用于执行一段javaScript脚本并且返回执行后的结果值。
Random:用于返回一个介于给定最小值和最大值范围之间的随机数。
RandomDate:用于返回一个介于给定开始日期和结束日期值之间的随机日期。
RandomString:用于使用指定字符中的字符返回长度为随机的字符串。
RandomFromMultipleVars:用于根据源变量提供的变量值返回随机值。
UUID:用于返回一个伪随机类型的通用唯一标识符。
CSVRead:从CSV文件中读取并返回一个字符串,需要注意的是每个线程用户都有自己的内部指针指向文件数组中的当前行,因此每个线程用户读取到的行数是不一样的。
如下图所示,在C:\data目录下,创建了一个 csv_sample.csv文件,并且该文件中有两列数据。
当使用CSVRead函数来读取csv_sample.csv中的数据时,可以通过如下图所示的方式来读取。
从图中可以看到在用于获取值的CSV文件 | *别名中应该设置csv_sample.csv文件的绝对路径,由于该文件是放在C:\data目录下,所以应该将其绝对路径设置为C:/data/csv_sample.csv。在CSV文件列号| next| *alias中设置需要读取的列号,默认是从0开始,也就是0代表了第一列,所以从图中可以看到当填入0时,The result of the function is 的输出结果为name,而根据上图中可以看到name 刚好是第一列,所以读取的确实就是第一列的数据。
