Compare commits

...

8 Commits

Author SHA1 Message Date
junyejiang 540a849901
Merge 3310c2bb37 into 4166b4b106 2025-07-20 17:28:02 +08:00
junyejiang 3310c2bb37
Merge branch 'apache:master' into strip 2025-03-05 18:49:38 +08:00
junyejiang 7ff7fdbdf0 Merge branch 'strip' of github.com:junyejiang/jmeter into strip 2025-03-05 18:42:31 +08:00
junyejiang b755fde60d update 2025-03-05 18:42:07 +08:00
junyejiang 1a552eb8e3
Merge branch 'apache:master' into strip 2025-02-18 18:04:04 +08:00
junyejiang c7d58ec8e8
Merge branch 'apache:master' into strip 2025-02-10 21:18:39 +08:00
junyejiang 9d3d7c64f5 update as CR 2025-02-10 18:57:24 +08:00
junyejiang 7942d03010 Stripping success result in order to speed up transmit in distributed test mode. 2025-01-13 22:32:00 +08:00
2 changed files with 23 additions and 0 deletions

View File

@ -759,6 +759,8 @@ wmlParser.types=text/vnd.wap.wml
# set this property to false
#sample_sender_strip_also_on_error=true
sample_sender_strip_if_success=false
# Remote batching support
# Since JMeter 2.9, default is MODE_STRIPPED_BATCH, which returns samples in
# batch mode (every 100 samples or every minute by default)

View File

@ -53,6 +53,7 @@ public class DataStrippingSampleSender extends AbstractSampleSender implements S
private final SampleSender decoratedSender;
// Configuration items, set up by readResolve
private transient volatile boolean stripAlsoOnError;
private static boolean stripIfSuccess = JMeterUtils.getPropDefault("sample_sender_strip_if_success", false);
/**
@ -126,6 +127,24 @@ public class DataStrippingSampleSender extends AbstractSampleSender implements S
private static void stripResponse(SampleResult result) {
result.setBytes(result.getBytesAsLong());
result.setResponseData(EMPTY_BA);
if (stripIfSuccess && result.isSuccessful()) {
result.setSentBytes(result.getSentBytes());
result.setSamplerData(null);
result.setRequestHeaders(null);
result.setBodySize(result.getBodySizeAsLong());
//result.setDataType(null);
//result.setDataEncoding(null);
result.setHeadersSize(result.getHeadersSize());
result.setResponseHeaders(null);
//result.setURL(null);
//result.setResponseMessage(null);
//result.setResponseCode(null);
}
}
/**
@ -138,10 +157,12 @@ public class DataStrippingSampleSender extends AbstractSampleSender implements S
protected Object readResolve() throws ObjectStreamException{
if (isClientConfigured()) {
stripAlsoOnError = clientConfiguredStripAlsoOnError;
stripIfSuccess = JMeterUtils.getPropDefault("sample_sender_strip_if_success", false);
} else {
stripAlsoOnError = SERVER_CONFIGURED_STRIP_ALSO_ON_ERROR;
}
log.info("Using DataStrippingSampleSender for this run with stripAlsoOnError: {}", stripAlsoOnError);
log.info("Using DataStrippingSampleSender for this run with stripIfSuccess: {}", stripIfSuccess);
return this;
}
}