使用 SWTBot 为您的 eclipse 应用创建自动化 GUI 测试用例
2010-03-22 00:00:00 来源:WEB开发网如果您希望获取 SWTBot 的源代码,可以通过 SVN 或者 Git 获取。
经过上面的步骤,开发环境就已经搭建好了,您是不是有些迫不及待地要尝试下 SWTBot 的功能了,我们首先从一个简单的测试用例开始吧。
创建您的第一个 SWTBot 测试用例
简单起见,我们就模拟一个为 eclipse 添加更新站点的过程,具体步骤如前文所描述的安装 SWTBot 插件的过程。
1. 创建测试工程
首先,您需要创建一个 eclipse 插件工程,把 SWTBot 相关的插件添加到依赖关系中,详细信息请参考图 3
图 3. 插件依赖关系
2. 新建测试用例
新建一个 Junit 4.x 测试用例,将下面的代码添加到您的用例中。因为不能重复添加站点,为了能够重复执行,例子在最后阶段选择了取消操作。
清单 1. 测试代码
package myswtbot.test;
import org.eclipse.swtbot.eclipse.finder.SWTWorkbenchBot;
import org.eclipse.swtbot.swt.finder.SWTBotAssert;
import org.eclipse.swtbot.swt.finder.junit.SWTBotJunit4ClassRunner;
import org.eclipse.swtbot.swt.finder.widgets.SWTBotShell;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* My first SWTBot test case which stimulate a scenario
* of adding updating site for the eclipse.
* The update site is for SWT development tools.
*
*/
@RunWith(SWTBotJunit4ClassRunner.class)
public class AddUpdateSiteTest {
private static SWTWorkbenchBot bot;
@BeforeClass
public static void setUpBeforeClass() throws Exception {
bot = new SWTWorkbenchBot();
bot.viewByTitle("Welcome").close();
}
@Test
public void testAddUpdateSite() throws Exception {
bot.menu("Help").menu("Install New Software...").click();
SWTBotShell shell = bot.shell("Install");
shell.activate();
bot.button("Add...").click();
//find the new shell widget by its name
SWTBotShell shell1 = bot.shell("Add Site");
shell1.activate();
bot.textWithLabel("Name:").setText("SWT development tools");
bot.textWithLabel("Location:").
setText("http://www.eclipse.org/swt/updates/3.5");
//verify button status
SWTBotAssert.assertEnabled(bot.button("OK"));
//Cancel it, in order to execute again and again
bot.button("Cancel").click();
bot.button("Cancel").click();
}
@AfterClass
public static void tearDownAfterClass() throws Exception {
bot.sleep(5000);
}
}
更多精彩
赞助商链接