counter 计数器

包含了两个属性和一个方法:

1. counter-reset
2. counter-increment
3. counter()/counters()
 
counter-reset(主要作用就是给计数器起个名字。如果可能,顺便告诉下从哪个数字开始计数。默认是0):
.xxx { counter-reset: small-apple; }              /* 计数器名称是'small-apple' ,用来*/
.xxx { counter-reset: small-apple 2; }           /* 计数器名称是'small-apple', 并且默认起始值是2 */
可以多个计时器同时命名:
.xxx { counter-reset: wangxiaoer 2 wangxiaosan 3; }
counter-reset还可以设置为none和inherit. 干掉重置以及继承重置。
 
counter-increment(counter递增幅度,默认变化值1,也可以是负数):
.counter { counter-reset: wangxiaoer 2; counter-increment: wangxiaoer; }
.counter:before { content: counter(wangxiaoer); }
<p class="counter"></p>
counter-increment会叠加,例如before和after都用了:
.counter { counter-reset: wangxiaoer 2; }
.counter:before,.counter:after { content: counter(wangxiaoer); counter-increment: wangxiaoer; }
结果输出:34
也可以同时设置多个定时器的:
counter-increment: test 1 lala 2;
 
counter()/counters()  (这是个方法,不是属性。类似CSS3中才calc()计算):
1、counter(name) /* name就是counter-reset的名称 */
2、counter(name, style)
style,其支持的关键字值就是list-style-type支持的那些值:disc | circle | square | decimal | lower-roman | upper-roman | lower-alpha | upper-alpha | none | armenian | cjk-ideographic | georgian | lower-greek | hebrew | hiragana | hiragana-iroha | katakana | katakana-iroha | lower-latin | upper-latin
 

转载于:https://www.cnblogs.com/chuangweili/p/5167976.html

### JMeter 中 Counter 计数器初始值从 2 开始的原因 在 JMeter 的计数器 (Counter) 配置中,初始值并不强制从 `1` 开始。实际上,用户可以根据需求自定义初始值[^1]。如果观察到某些场景下计数器的值从 `2` 开始,则可能是由于以下几个原因: #### 1. **初始值被手动设置为 2** 用户可以在计数器配置界面中显式设定 `Starting value`(起始值)。如果此处填写的是 `2`,那么计数器的第一轮迭代就会返回这个值[^2]。 #### 2. **线程组或其他逻辑的影响** 如果未勾选选项 `Task counter independently for each user` 或者存在多线程并发执行的情况,可能会导致不同线程共享同一个计数器实例。在这种情况下,某个线程可能已经完成了一次迭代并使计数器递增一次,因此后续线程看到的第一个值是从 `2` 开始[^3]。 #### 3. **计数器复位机制** 当启用选项 `Rest counter on each Thread Group Iteration` 时,在每次线程组迭代结束后,计数器会被重置为其初始值。然而,如果在线程组的一次迭代过程中发生了多次调用,首次调用之后计数器已经被更新过一次,这可能导致第二次调用显示的结果从 `2` 起步。 --- ### 设置方法 要确保计数器始终从特定数值(如 `1`)开始工作,可以通过以下方式调整其参数: 1. 打开 JMeter 并创建一个新的测试计划。 2. 添加一个线程组,并在其上右键单击 -> **Add** -> **Config Element** -> **Counter**。 3. 在弹出的窗口中输入所需的参数: - **Name**: 定义计数器的名字以便识别。 - **Comments**: 可选字段用于备注说明用途。 - **Starting Value**: 设定希望的起始值,默认可填入 `1`。 - **Increment**: 指定每一轮增加的数量,通常设为 `1` 表示逐个累加。 - **Maximum Value**: 上限阈值,超过此值后行为取决于是否启用了循环模式。 - **Number Format**: 控制输出样式,比如整型 `%d`, 浮点型 `%f`. - **Exported Variable Name**: 将当前计数保存至指定变量名以备后续引用。 4. 根据实际需要决定是否开启独立任务计数以及线程组内的自动恢复功能。 以下是具体操作的一个简单例子展示如何让计数器严格按预期顺序运行: ```properties # Example Configuration of a Basic Counter in JMeter Properties File or GUI Form Fields. counter_name=MyCustomCounter starting_value=1 # Ensure this is set explicitly to your desired start point like '1'. increment_by=1 # Increment by one unit per iteration step as usual case scenario here. maximum_limit=10 # Optional limit; adjust based upon test requirements accordingly. output_format=%d # Standard integer formatting without decimals etc.. export_to_var=myVar # Store generated count into variable named myVar accessible elsewhere within same context scope later during execution phases then. ``` 通过上述步骤能够精确控制计数器的行为表现形式从而满足各种复杂应用场景下的定制化需求。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值