java doclick_jbutton doClick()方法不起作用

我单元测试的时候用JDialog中的button点击,发现不起作用

public class Message extends JDialog implements ActionListener {

protected JFrame messageFrame;

protected JLabel messsageLabel;

protected JButton closeButton;

public Message(JFrame jFrame) {

//调用父类构造函数

super(jFrame, "提示", true);

//初始化私有变量

messsageLabel = new JLabel("", JLabel.CENTER); //文字居中对齐

closeButton = new JButton();

//对话框初始化

messageFrame = jFrame;

this.setSize(300, 200);

this.setLayout(new GridBagLayout());

this.setDefaultCloseOperation(HIDE_ON_CLOSE);

//关闭按钮样式设置

closeButton.setText("确定");

closeButton.setSize(50,50);

//添加组件

this.getContentPane().add(messsageLabel);

this.getContentPane().add(closeButton);

//为组件注册监听事件

closeButton.addActionListener(this);

}

public void showErrorMessage(String message) {

messsageLabel.setText(message); //label组件添加文字

this.setLocation(messageFrame.getX()+ messageFrame.getWidth(), messageFrame.getY()); //相对定位

this.setVisible(true); //显示对话框

}

public void actionPerformed(ActionEvent e) {

dispose(); //关闭JDialog

}

}

测试代码

public class ApplicationTest {

@Test

public void main() throws Exception {

//新建一个注册界面

Register register = new Register();

assertTrue(register.isShowing()); //断言界面正在处于点击状态

//准备相关数据

User user = new User("liming@qq.com", "liming");

register.username.setText(user.getUsername());

register.password.setText(user.getPassword());

register.repassword.setText(user.getPassword());

register.register.doClick(); //手动触发点击按钮事件

System.out.println(register.alertMessage.messsageLabel.getText());

assertEquals("注册成功!", register.alertMessage.messsageLabel.getText());

register.alertMessage.closeButton.doClick(); //点击确定按钮

//

// assertFalse(register.alertMessage.isShowing()); //断言窗口消失

}

}

然后发现doClick方法不会起作用,也就是确定按钮不会自定被点击

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值