0

Excel がアップロードされるシナリオを記録しました。次の後続のリクエストでは、Excel のこれらのレコードがパラメーターとして渡されます。

しかし、Excel を変更する必要があるとします。その要求はどのように新しい値を取得しますか?

値が多数あるため、パラメータ化は答えではないようです。

助けてください。

4

1 に答える 1

1

Excel ファイルからいくつかの値を抽出し、それらを HTTP 要求パラメーターとして追加する必要がある場合は、次の方法を使用できます。

  1. Apache Tikaバイナリ (tika-app-*.jar) をダウンロードし、JMeter の /lib フォルダーにドロップします。実行中の場合は JMeter を再起動します
  2. Excel ファイルの値に基づいて変更するパラメーターをリクエストの子としてBeanshell PreProcessorを追加します。
  3. 「スクリプト」では、Excel ファイルを読み取り、そこから値を HTTP 要求パラメーターとして追加するコードを開発します。以下のコードの例は、testfile.xlsx ファイルの A1 および B1 セルから値を抽出し、それらを「foo」および「bar」HTTP 要求パラメーターとして送信します。

    import org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy;
    import org.apache.poi.ss.usermodel.Cell;
    import org.apache.poi.xssf.usermodel.XSSFRow;
    import org.apache.poi.xssf.usermodel.XSSFSheet;
    import org.apache.poi.xssf.usermodel.XSSFWorkbook;
    
    import java.io.File;
    import java.io.FileInputStream;
    
    FileInputStream excelFile = new FileInputStream(new File("/path/to/excel/testfile.xlsx"));
    XSSFWorkbook workbook = new XSSFWorkbook(excelFile);
    XSSFSheet sheet = workbook.getSheetAt(0);
    XSSFRow row = sheet.getRow(0);
    Cell a1 = row.getCell(0);
    String a1Value = a1.getStringCellValue();
    Cell a2 = row.getCell(1);
    String a2Value = a2.getStringCellValue();
    
    excelFile.close();
    
    sampler.addArgument("foo",a1Value);
    sampler.addArgument("bar",a2Value);
    

参考文献:

于 2015-03-15T10:01:07.213 に答える