https://bz.apache.org/bugzilla/show_bug.cgi?id=60744

            Bug ID: 60744
           Summary: GUI elements are not cleaned up when reused during
                    load of Test Plan
           Product: JMeter
           Version: 3.1
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Main
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: ---

Created attachment 34765
  --> https://bz.apache.org/bugzilla/attachment.cgi?id=34765&action=edit
Test Plan to load and see effect

Hello,
I noticed a strange behaviour of JMeter when you load a Test Plan.

Try loading attached Test plan, you will notice that:
In 3.1, Implementation property of HTTP Request Defaults and HTTP-Request-XXX
are in this order : Java, HttpClient3.1, HttpClient4

Open them in nightly build, as HttpClient3.1 has disappeared, you will get:
Java, Java (BUG HERE, you should get ''), HttpClient4


The problem comes from the code:
httpImplementation.setSelectedItem(samplerBase.getPropertyAsString(HTTPSamplerBase.IMPLEMENTATION));

samplerBase.getPropertyAsString(HTTPSamplerBase.IMPLEMENTATION) => Returns
HttpClient3.1 so as per setSelectedItem contract:
"If anObject is not in the list and the combo box is uneditable, it will not
change the current selection"

So what happens here is that you get the previous "Java" settings.
Note that bug is really tricky as if first node is HttpClient4, then you will
get HttpClient 4 instead of Java.


The fix would be here to add a call to clearGUI() in
JMeterTreeModel#addComponent before calling guicomp.configure(component):

-
https://github.com/apache/jmeter/blob/trunk/src/core/org/apache/jmeter/gui/tree/JMeterTreeModel.java#L146


But I am not sure this cannot have undesired side effects.

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to