java - 比较 JMeter 中的 2 个 CSV 文件
问题描述
代码一直在无限循环中运行,无论数据是否匹配。我也想在比较时忽略第一列/标题列。你能
帮忙吗?谢谢
我正在使用下面的代码来比较 2 个 csv 文件。
输入文件:
文件 1
ColumnA
A
B
C
文件2
ColumnA
A
B
D
代码
#import java.io.File;#
#import java.io.FileReader;#
#import java.io.LineNumberReader;#
String strfile1 = vars.get("thisScriptPath") + "file1.csv";
String strfile2 = vars.get("thisScriptPath") + "file2.csv";
def file1 = new File('/path/to/file1')
def file2 = new File('/path/to/file2')
def file1Lines = file1.readLines('UTF-8')
def file2Lines = file2.readLines('UTF-8')
if (file1Lines.size() != file2Lines.size()) {
SampleResult.setSussessful(false)
SampleResult.setResponseMessage('Files size is different, omitting line-by-line compare')
} else {
def differences = new StringBuilder()
file1Lines.eachWithIndex { String file1Line, int number ->
String file2Line = file2Lines.get(number)
if (!file1Line.equals(file2Line)) {
differences.append('Difference # ').append(number).append('. Expected: ').append(file1Line).append('. Actual: ' + file2Line)
differences.append(System.getProperty('line.separator'))
}
}
if (differences.toString().length() > 0) {
SampleResult.setSuccessful(false)
SampleResult.setResponseMessage(differences.toString())
}
}
解决方案
推荐阅读
- lstm - LSTM - 来自 TF-Hub 的 Elmo 与 TF2.0 纯实现
- netsuite - Suitescript 2.0 - Suitelet + transaction_search for serverWidget_sublist 获取项目并选择子字段
- django - 我无法使用 dota2 API 为我的数据库提供我的 API
- perl - 使用 sed/perl/awk 替换第一次出现的匹配文本
- pandas - Watson pandas 读取 csv 泰坦尼克号
- erlang - Erlang 控制台不提供任何输出(在 Windows 上)
- java - 复制(克隆)包装类类型的对象数组
- f# - Fable 中是否有任何优化通道可用?
- java - Java使用JInput控制器,提高性能
- django - 使用 cripsy 修改 django 表单中的 .form-group 属性