Я использую этот микро-шаблон для реализации Nullable serialization:
[XmlIgnore]
public double? SomeValue { get; set; }
[XmlAttribute("SomeValue")] // or [XmlElement("SomeValue")]
[EditorBrowsable(EditorBrowsableState.Never)]
public double XmlSomeValue { get { return SomeValue.Value; } set { SomeValue= value; } }
[EditorBrowsable(EditorBrowsableState.Never)]
public bool XmlSomeValueSpecified { get { return SomeValue.HasValue; } }
Это обеспечивает правильный интерфейс для пользователя без компромиссов и по-прежнему делает правильную вещь при сериализации.
Вы можете создать свой тест следующим образом:
Sampler 1
JSR223 PostProcessor со следующим кодом:
if (!prev.isSuccessful()) {
vars.putObject('sampler1Result', prev)
}
${JMeterThread.last_sample_ok}
Sampler 3
JSR223 PostProcessor со следующим кодом:
if (vars.getObject('sampler1Result') != null) {
def sampler1Result = vars.getObject('sampler1Result')
prev.setSuccessful(sampler1Result.isSuccessful())
prev.setResponseCode(sampler1Result.getResponseCode())
prev.setResponseMessage(sampler1Result.getResponseMessage())
prev.setResponseData(sampler1Result.getResponseData())
}
где :
vars
- это сокращение для экземпляра класса JMeterVariables prev
- сокращение для экземпляра класса HTTPSampleResult