LR(三)Vugen中脚本增强-参数化

脚本增强的总结

1、脚本采用录制还是抓包手写没有本质的区别。

2、脚本增强技术,一般事务和检查点是属于必加的。

3、从理论上来说,参数化和关联是要根据实际情况灵活使用的。

4、要根据需要,灵活的选择使用思考时间和集合点技术。

参数化

三种方式:

  • 选中需要参数化的值,右键-->replace with a parameter,然后点击 open parameter list,设置参数的值,

  • 先把参数写入一个txt/csv文件,点击open parameter list,从文件读取参数,然后将需要参数化的值参数化

  • 直接点击open parameter list,使用LR的txt文档设置参数的值

然后打开log的参数调试模式,运行查看参数使用情况

paramter type

  • 函数类型:通过工具内置的、扩展的函数来生成对应的参数值。

  • 文件类型:通过读取特定的文件来获取参数值。常规的参数文件格式都是CSV格式(以逗号分隔的文件)

参数取值方式

Update value on

用来设置参数更新参数值的时机。可选的选项有三个:

  • Each Iteration:每次迭代,即每一次迭代开始的时候,参数就会去读取或者更新参数值。在下一次迭代开始之前,不论该参数是否被调用、调用一次还是多次,参数的值都是保持不变的。 该模式下,参数值的更新和迭代有关,和调用无关。 参数值的更新次数等于迭代次数。

    若一个迭代里多次调用该参数,这个迭代中的参数值都是一样的

  • Each occurrence:每次出现,所谓出现就是参数被调用。即每一次参数被调用之前,参数都会去读取或者更新参数值。调用一次,变更一次。 该模式下,参数值的更新只和调用有关,和迭代无关。 参数值的更新次数等于调用次数。

    若一个迭代里多次调用该参数,这个迭代中的参数值是不一样的。

  • Once:仅一次,是指参数第一次被调用时,参数会获取一个参数值。之后不论该参数是否被调用,参数的值都不会发生变更。 参数值的更新次数等于1.

    不论多少个迭代或调用,参数的值始终是一样的。

Select next value

该选项是用来设置参数读取参数值的方式。

  • Sequential:顺序取值。

  • Random:随机取值。

  • Unique:唯一取值。 在LR中,对于Unique的实现采取的是:先分配再顺序的方式。

    • 先分配:先将所有的参数值按照大小提前分配给每一个虚拟用户

    大小设置在paramter type中的unique number中的block size per vuser

    • 再顺序:每一个虚拟用户都会按照顺序取值的方式使用自己的参数值。

      通过先分配再顺序的方式,最低可以保障虚拟用户之间不会使用重复的值。如果分给每一个虚拟用户的值足够多,在顺序取值的基础上,就可以保障每一个虚拟用户每一次取值都是唯一的

  • same line as XXX:该选项只有当脚本中出现2个及2个以上的文件类型的参数时才会出现。 最终是参数A可以选择: same line as 参数B这样的操作。 效果:调用参数A的时候,参数A会使用和参数B相同行号的值。 该方式就是用来建立两个参数之间的一一对应关系的。 该方式不参与和 Update value on 选项的组合。

Select next value为Unique时的选项
  • when out of values:out of values是指参数更新参数值的次数大于按所分配到的参数值的个数。该选项就是用来设置满足该条件时的处理方式。有以下三种:

    • abort vuser:中止虚拟用户,即虚拟用户会停止执行脚本。

    • Continue in a clycle manner:继续执行,循环使用所分配到的值。

    • Continue with last value:继续执行,使用最后一次的参数值。PS选择abort,保证了每一次都是唯一的。 选择continue,则意味着放弃了唯一的诉求,只保留了分配的效果。

  • Allocate:用来设置块大小,方式有两种:

    • Auto:自动方式,仅适用于每次迭代。块大小等于Run logic中的Number of iterations的值。

    • Allocate:手动方式,由用户手动设置块大小。

LR中参数化的注意事项

  • 以记事本方式编辑参数文件时,要确保最后一个有效的参数值之后有且只有一个回车。

  • 随机取值和顺序取值本质上是没有任何区别的。

  • 要实现唯一或者分配的效果,则可以使用Unique方式来实现

原文地址:https://www.cnblogs.com/yjh1995/p/13514824.html