jmeter-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sebb <>
Subject Adding tristate default processing for checkboxes
Date Sat, 08 Dec 2012 12:15:23 GMT
I just started looking at using the TristateCheckbox for the new TCP
Sampler "close connection" checkbox.

AFAICT, configuration settings are handled by saving the config
element values in the sampler property map, these are then replaced by
the values from the sampler element.
In the case of a StringProperty, there is special processing to ensure
that empty values are ignored, i.e. they are not saved.

This means that if the sampler element contains a value for a boolean
property, it will be used in preference to the config value.
However if the sampler does not have an entry for a boolean property,
the config value (if any) will be used.

The sampler code determines whether a missing value is true or false
by applying the appropriate default to the property value.

I think this means that a missing entry is equivalent to an indeterminate value.
This would mean that we could show the indeterminate marker for any
missing <boolProp> entries, and equally, remove the property from the
map when saving indeterminate values.

Now we currently omit *some* boolProp entries if they are the same as
the default, whether that is true or false.
These would both show up as indeterminate on both config and sampler
screens, whereas previously they would show up as the default value.

I suppose this might be initially confusing for some users, so we
would have to make sure the defaults were clearly documented.

If we continue to omit entries where the value is the same as default,
I think the effect will be the same, even if the display has changed.

Does this make sense?
Or have I overlooked something?

We could apply this behaviour to the TCP Sampler initially to see how it works.

Note: I've not looked at the TestBean implementations - they will need
further investigation.

View raw message