CSV data set config(CSV文件读取 数据驱动测试)
元件位置:配置元件→CSV data set config(CSV数据文件设置)
1. CSV 数据文件设置页面

| 字段 | 表述 |
|---|---|
| 是否允许带引号? | 为true,参数值会去掉引号作为一个值,当参数值包含分割符,可作为一个字段;如:“a,b”=>a,b 或者: “325.21”=>325.21; 为false,参数值不会去掉引号,会保留引号作为值的一部分,如:“3254”=>“3254” |
| 遇到文件结束符再次循环? | 当csv文件最后一行已读取后, 为true,会重新到文件的第一行再次循环读取; 为false,则看下一个字段的选择 |
| 遇到文件结束符停止线程 | 为true,则线程结束; 为false,线程不会结束,也不从第一行读取,而是读取固定值 <EOF> |
| 线程共享模式 | 所有线程,所有的线程,共享一个游标,按顺序分配,第一个执行的线程读第1行,第二个执行的线程读第2行,第三个执行的线程读第3行…; 当前线程组,每个线程组独立读取csv; 当前线程,每个线程组的当前线程数读取csv; |
验证 CSV data set config(CSV数据文件设置) 在线程组内部的时候:
线程数为1,循环次数8,再次循环false,停止线程true,文件内容行数4
===》按文件内容顺序执行8次,及从头到尾执行2遍。
线程数为1,循环次数2,再次循环false,停止线程true,文件内容行数5,循环控制器6
===》第一行执行6次后,第二行执行6次。
线程数为1,循环次数7,再次循环false,停止线程false,文件内容行数5
===》从头到尾执行1遍,再加两次的<EOF>
线程数为3,循环次数3,再次循环false,停止线程false,文件内容行数5
===》第一个线程执行3行,第二个线程执行剩下两行再加1个<EOF>,第三个线程执行3个<EOF>
验证 CSV data set config(CSV数据文件设置) 在线程组外部的时候:
文件内容7行,再次循环true,
线程组A: 线程数1,循环次数3
线程组B: 线程数2,循环次数2
线程组C: 线程数3,循环次数2
线程共享:所有线程 ===》执行结果:
| 执行顺序 | 线程组 | 执行结果 |
|---|---|---|
| 1 | 线程组A | 1 2 3 |
| 2 | 线程组B | (4 5)(6 7) |
| 3 | 线程组C | (1 2)(3 4)(5 6) |
所有线程:共享游标, 每个线程组不会从头获取文件,所有线程组的所有线程数都是按照执行顺序进行获取文件内容。
线程共享:当前线程组 ===》执行结果:
| 执行顺序 | 线程组 | 执行结果 |
|---|---|---|
| 1 | 线程组C | 1 |
| 2 | 线程组A | 1 |
| 3 | 线程组C | 2 |
| 4 | 线程组A | 2 |
| 5 | 线程组A | 3 |
| 6 | 线程组C | (3 4) (5 6) |
| 7 | 线程组B | (1 2) (3 4) |
当前线程组:每个线程组会从头获取文件,在单个线程组内部的线程数执行会继续获取。
线程共享:当前线程 ===》执行结果:
| 执行顺序 | 线程组 | 执行结果 |
|---|---|---|
| 1 | 线程组C | 1 |
| 2 | 线程组A | 1 |
| 3 | 线程组A | 2 |
| 4 | 线程组C | 2 |
| 5 | 线程组A | 3 |
| 6 | 线程组C | (1 2) (1 2) |
| 7 | 线程组B | (1 2) (1 2) |
当前线程:每个线程组会从头获取文件,且每个线程数也会从头获取文件。
1281

被折叠的 条评论
为什么被折叠?



