Search in sources :

Example 6 with ListResultData

use of org.apache.jmeter.report.processor.ListResultData in project jmeter by apache.

the class AbstractGraphConsumer method createSerieResult.

/**
 * @param series     The series name
 * @param seriesData {@link SeriesData}
 * @return MapResultData metadata for serie
 */
protected MapResultData createSerieResult(String series, SeriesData seriesData) {
    MapResultData seriesResult = new MapResultData();
    seriesResult.setResult(RESULT_SERIES_NAME, new ValueResultData(series));
    seriesResult.setResult(RESULT_SERIES_IS_CONTROLLER, new ValueResultData(seriesData.isControllersSeries()));
    seriesResult.setResult(RESULT_SERIES_IS_OVERALL, new ValueResultData(seriesData.isOverallSeries()));
    seriesResult.setResult(RESULT_SERIES_DATA, new ListResultData());
    return seriesResult;
}
Also used : MapResultData(org.apache.jmeter.report.processor.MapResultData) ValueResultData(org.apache.jmeter.report.processor.ValueResultData) ListResultData(org.apache.jmeter.report.processor.ListResultData)

Example 7 with ListResultData

use of org.apache.jmeter.report.processor.ListResultData in project jmeter by apache.

the class JsonExporter method export.

@Override
public void export(SampleContext context, File file, ReportGeneratorConfiguration reportGeneratorConfiguration) throws ExportException {
    Object data = context.getData().get(ReportGenerator.STATISTICS_SUMMARY_CONSUMER_NAME);
    if (data instanceof MapResultData) {
        LOGGER.info("Found data for consumer {} in context", ReportGenerator.STATISTICS_SUMMARY_CONSUMER_NAME);
        MapResultData result = (MapResultData) data;
        Map<String, SamplingStatistic> statistics = new HashMap<>();
        MapResultData overallData = (MapResultData) result.getResult("overall");
        LOGGER.info("Creating statistics for overall");
        createStatistic(statistics, overallData);
        ListResultData itemsData = (ListResultData) result.getResult("items");
        LOGGER.info("Creating statistics for other transactions");
        itemsData.forEach(r -> createStatistic(statistics, (MapResultData) r));
        LOGGER.info("Checking output folder");
        File outputDir = checkAndGetOutputFolder(reportGeneratorConfiguration);
        File outputFile = new File(outputDir, OUTPUT_FILENAME);
        LOGGER.info("Writing statistics JSON to {}", outputFile);
        try (Writer fileWriter = Files.newBufferedWriter(outputFile.toPath())) {
            OBJECT_WRITER.writeValue(fileWriter, statistics);
        } catch (IOException e) {
            throw new ExportException("Error generating JSON statistics file to " + outputFile + " for " + statistics, e);
        }
    }
}
Also used : HashMap(java.util.HashMap) MapResultData(org.apache.jmeter.report.processor.MapResultData) IOException(java.io.IOException) ListResultData(org.apache.jmeter.report.processor.ListResultData) File(java.io.File) ObjectWriter(com.fasterxml.jackson.databind.ObjectWriter) Writer(java.io.Writer)

Aggregations

ListResultData (org.apache.jmeter.report.processor.ListResultData)7 ValueResultData (org.apache.jmeter.report.processor.ValueResultData)6 MapResultData (org.apache.jmeter.report.processor.MapResultData)4 HashMap (java.util.HashMap)2 ObjectWriter (com.fasterxml.jackson.databind.ObjectWriter)1 File (java.io.File)1 IOException (java.io.IOException)1 Writer (java.io.Writer)1 Map (java.util.Map)1 TreeMap (java.util.TreeMap)1 Aggregator (org.apache.jmeter.report.processor.Aggregator)1 IndexedNameSelector (org.apache.jmeter.report.processor.graph.IndexedNameSelector)1