使用FEST-Swing测试GUI

import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField; public class MyFrame extends JFrame {
public MyFrame() {
setTitle("My Frame");
setSize(200, 100);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Container content = getContentPane();
Box vbox = new Box(BoxLayout.Y_AXIS);
content.add(vbox, BorderLayout.CENTER); final JLabel showTextLabel = new JLabel(" ");
showTextLabel.setName("show");
vbox.add(showTextLabel);
final JTextField input = new JTextField();
input.setName("input");
vbox.add(input);
JButton button = new JButton("copy");
button.setName("copy");
button.addActionListener(new ActionListener() { @Override
public void actionPerformed(ActionEvent e) {
showTextLabel.setText(input.getText());
} });
vbox.add(button);
}
}
private FrameFixture frame; @Before
public void setUp() {
frame = new FrameFixture(new MyFrame());
frame.show(); // 将frame显示出来
} //在@After方法中对其进行清理:
@After
public void tearDown() {
frame.cleanUp();
} //然后编写@Test方法:
@Test
public void testCopyTextToLabel() {
frame.textBox("input").enterText("Hello World!");
frame.button("copy").click();
frame.label("show").requireText("Hello World!");
}
import org.fest.swing.fixture.FrameFixture;
import org.junit.After;
import org.junit.Before;
import org.junit.Test; public class MyFrameTest { private FrameFixture frame; @Before
public void setUp() {
frame = new FrameFixture(new MyFrame());
frame.show();
} @After
public void tearDown() {
frame.cleanUp();
} @Test
public void testCopyTextToLabel() {
frame.textBox("input").enterText("Hello World!");
frame.button("copy").click();
frame.label("show").requireText("Hello World!");
}
}
本文出自 “豆子空间” 博客,请务必保留此出处http://devbean.blog.51cto.com/448512/126828
使用FEST-Swing测试GUI的更多相关文章
- AutoIT 测试GUI工具
今天听到同事提到AutoIT,可以用来测试GUI窗口.了解一下这个工具. 以下内容引自: http://www.jb51.net/article/14870.htm (此url非原出处,该博主未注明原 ...
- Swing的GUI组件得到焦点
Swing的GUI组件如JButtin,JTextArea,JRadioButton,JComboBox等,可以使用requestFocus()方法来获得焦点.
- 使用Swing的GUI编程
Swing AWT概述 AWT:抽象窗口工具包,提供了一套与本地图形界面进行交互的接口,是Java提供的用来建立和设置Java的图形用户界面的基本工具 Swing以AWT为基础的,尽管Swing消除了 ...
- NUnitForms 测试GUI应用程序的优秀工具
著名的NUnit是单元测试的优秀工具,但是要在一个测试方法中启动GUI程序,比如Windows Form界面,这比较难做到.NUnitForms就是为解决这个问题产生的,它是NUnit的一个扩展程序, ...
- 给Swing的GUI组件设置前景色和背景色
JButton btn=new JButton("TEST"); btn.setForeground(Color.white);// 设置前景色(文字颜色)btn.setBackg ...
- 转载:开发者眼中最好的 22 款 GUI 测试工具
对于很多同学来说gui程序的测试是一个难点,所以我从网上转载了一篇关于gui测试的一篇文章,里面罗列的很多工具,大家可以尝试一下学习学习. 英文原文:22 best GUI testing tools ...
- 开发者眼中最好的 22 款 GUI 测试工具
1.Abbot - Java GUI 测试框架 Abbot是一个基于GUI的简单的Java测试框架,它能够帮助开发者测试Java用户界面. 它提供事件自动生成和验证Java GUI组件,使您能够轻松地 ...
- Java进阶篇(六)——Swing程序设计(上)
Swing是GUI(图形用户界面)开发工具包,内容有很多,这里会分块编写,但在进阶篇中只编写Swing中的基本要素,包括容器.组件和布局等,更深入的内容会在高级篇中出现.想深入学习的朋友们可查阅有关资 ...
- Java客户端工具选择:HTML?Swing?XML?
整理下面的文章是因为个人觉得写的很好,关于java的客户端了解也并不是太多.看了下面的文章觉得很有必要贴出来,方便自己以后了解java客户端编程. Java软件设计师和管理人员经常会面临这样的难题:在 ...
随机推荐
- mongodb下载、安装、配置服务启动、及可视化工具下载、使用
MongoDB: 1.下载地址:http://www.mongodb.org/downloads(32位还是64位自行选择).我下载的是:mongodb-win32-x86_64-3.2.4-sign ...
- JavaWEB域对象
PageContext: ServletRequest: HttpSession: ServletContext: void setAttribute(String name, Object valu ...
- 8.12 CSS知识点5
背景原点 background-origin 设置元素背景图片的原始起始位置,必须保证背景是background-repeat为no-repeat此属性才会生效. 语法: background-ori ...
- _Dispose(typeinfo,pointer ); 不知道说的是什么? 感觉会有用, 留待以后研究
[传说]晓不得2013(26562729) 16:45:41别人把文章发出来,说明就是验证过的.[潜水]ひㄨㄨ那个ㄨㄨ(1548253108) 16:46:23[潜水]ひㄨㄨ那个ㄨㄨ(15 ...
- 循序渐进Python3(四) -- 装饰器、迭代器和生成器
初识装饰器(decorator ) Python的 decorator 本质上就是一个高阶函数,它接收一个函数作为参数,然后,返回一个新函数. 使用 decorator 用Python提供的 @ 语法 ...
- poj 2536 Gopher II (二分匹配)
Gopher II Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 6345 Accepted: 2599 Descrip ...
- Bootstrap 栅格系统(转载)
源地址:http://www.cnblogs.com/linjiqin/p/3559800.html Bootstrap 栅格系统 目录1.简介2.栅格选项3.列偏移4.嵌套列5.列排序 1.简介Bo ...
- wpf 旋转效果
<Grid> <Grid.Triggers> <EventTrigger RoutedEvent="Page.Loaded"> <Begi ...
- AS错误:Please configure your build for VectorDrawableCompat.
运行第一个Android Stdio程序就出现下面这个问题,由于对Android Stdio不熟悉整了三个小时才解决,希望这篇博客能帮助更多的人. 问题:Caused by:java.lang.Run ...
- php设计模式学习之观察者模式
什么都不说,先看代码: interface userOperateImpl { public function operate($username); } class userLoginLog imp ...