将 GUI 添加到 SOAPui 以插入变量


import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.FlowLayout;
import java.awt.event.*
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.Vector;
import com.eviware.soapui.support.types.StringToStringMap  
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
public class Swing05 extends WindowAdapter
{
public Swing05()
{
Vector vect02 = new Vector();
vect02.addElement("ACTIVE");
vect02.addElement("VERIFY");
vect02.addElement("PENDING");
vect02.addElement("DEPLOYMENT");
vect02.addElement("PLANNING");
JComboBox cmboBox01 = new JComboBox(vect02);
cmboBox01.setAlignmentY(Component.TOP_ALIGNMENT);
// PANEL01 - VERTICAL LAYOUT BUTTONS
JTextField button02 = new JTextField("Cookie");
JTextArea button03 = new JTextArea("Locked By User");
button03.setAlignmentX(Component.CENTER_ALIGNMENT);

JPanel panel01 = new JPanel();
panel01.setLayout(new BoxLayout(panel01,BoxLayout.Y_AXIS));

panel01.add(button02);
panel01.add(Box.createVerticalStrut(5));
panel01.add(button03);
panel01.add(Box.createVerticalStrut(5));
panel01.add(cmboBox01);
//panel01.add(Box.createVerticalGlue());
//panel01.setBorder(BorderFactory.createLineBorder(Color.black));
JPanel right_panel = new JPanel(new FlowLayout(FlowLayout.CENTER, 0, 0));
//right_panel.setBorder(BorderFactory.createLineBorder(Color.black));
right_panel.add(panel01);


// PANEL02 - HORIZONTAL LIST AND PANEL01
// Here, we are going to create a list of elements and place them into a BorderLayout panel
// in the centre to ensure that the list will expand in size relative to the window size.
Vector vect01 = new Vector();
vect01.addElement("COUNTRY_STG");
vect01.addElement("LOB_STG");
vect01.addElement("MRT_LABOR_BASE_RATES_STG");
vect01.addElement("MRT_LABOR_ADDERS_STG");
vect01.addElement("INFLATION_STG");
vect01.addElement("MRT_PRICE_CONFIG");
vect01.addElement("MRT_WW_CONFIG");
 vect01.addElement("PAYMENT_TERMS");
 vect01.addElement("PAYMENT_TERMS_MAPPING");
vect01.addElement("COUNTRY_CURR_CONFIG");
 vect01.addElement("SDM_OFFERING_HIERARCHY");
 vect01.addElement("SDM_FWB_MAPPING");
JList list01 = new JList(vect01);
JScrollPane scrPane = new JScrollPane(list01);
JPanel p1 = new JPanel();
p1.setLayout(new BorderLayout());
//  p1.setBorder(BorderFactory.createEtchedBorder());
p1.add(scrPane,BorderLayout.CENTER);
JPanel panel02 = new JPanel();
panel02.setLayout(new BoxLayout(panel02,BoxLayout.X_AXIS));
panel02.add(Box.createHorizontalStrut(5));
panel02.add(p1);
panel02.add(Box.createHorizontalStrut(5));
//panel02.add(panel01);
panel02.add(right_panel);
panel02.add(Box.createHorizontalStrut(5));
// PANEL03 - HORIZONTAL LAYOUT FOR BUTTONS
JButton button05 = new JButton("Close");
JButton button06 = new JButton("Apply");
JPanel panel03 = new JPanel();
panel03.setLayout(new BoxLayout(panel03,BoxLayout.X_AXIS));
panel03.add(Box.createHorizontalGlue());
panel03.add(Box.createHorizontalStrut(5));
panel03.add(button05);
panel03.add(Box.createHorizontalStrut(5));
panel03.add(button06);
panel03.add(Box.createHorizontalStrut(5));
// PANEL04 - HOLDS PANEL02 and PANEL03
JPanel panel04 = new JPanel();
panel04.setLayout(new BoxLayout(panel04,BoxLayout.Y_AXIS));
panel04.add(Box.createVerticalStrut(5));
panel04.add(panel02);
panel04.add(Box.createVerticalStrut(0));
panel04.add(panel03);
panel04.add(Box.createVerticalStrut(5));
// Put EVERYTHING into a scrollable pane so if the frame isn't large enough to
// display everything, it can be reached by scrolling the pane.
JScrollPane mainPane = new JScrollPane(panel04);

// CREATE THE WINDOW AND DISPLAY THE FRAME
JFrame frame01 = new JFrame();
frame01.setContentPane(mainPane);
frame01.setTitle("Insert Variables");
frame01.setSize(500,200);
frame01.setLocation(200,200);
frame01.addWindowListener(this);
frame01.pack();
frame01.setVisible(true);
frame01.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);

button05.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)
{
   frame01.dispose();
}
});
}
public static void main(String [] args)
{
Swing05 app01 = new Swing05();
}
}

我正在尝试构建一个接口来为 SoapUI 选择一些变量。我惨败了.

有人可以指出我正确的方向吗?

我无法将所选项目连接到可以进一步使用的变量。

我相信

你想通过Groovy脚本为SoapUI添加GUI支持。在这种情况下,我建议选择具有GUI功能的SoapUI插件开发。

这是您可以适应的示例 - https://github.com/olensmar/soapui-emailtestsstep-plugin/blob/master/src/main/java/soapui/demo/teststeps/email/EMailTestStepDesktopPanel.java

最新更新