package org.xmx0632.deliciousfruit.functional.gui; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import org.junit.Ignore; import org.junit.Test; import org.junit.experimental.categories.Category; import org.openqa.selenium.By; import org.openqa.selenium.WebElement; import org.springside.modules.test.category.Smoke; import org.xmx0632.deliciousfruit.data.TaskData; import org.xmx0632.deliciousfruit.entity.Task; import org.xmx0632.deliciousfruit.functional.BaseSeleniumTestCase; /** * 任务管理的功能测试, 测试页面JavaScript及主要用户故事流程. * * @author calvin */ @Ignore public class TaskGuiFT extends BaseSeleniumTestCase { /** * 浏览任务列表. */ @Test @Category(Smoke.class) public void viewTaskList() { s.open("/task/"); WebElement table = s.findElement(By.id("contentTable")); assertEquals("Release SpringSide 4.0", s.getTable(table, 0, 0)); } /** * 创建并更新任务. */ @Test @Category(Smoke.class) public void createAndUpdateTask() { s.open("/task/"); // create s.click(By.linkText("创建任务")); Task task = TaskData.randomTask(); s.type(By.id("task_title"), task.getTitle()); s.click(By.id("submit_btn")); assertTrue(s.isTextPresent("创建任务成功")); // update s.click(By.linkText(task.getTitle())); assertEquals(task.getTitle(), s.getValue(By.id("task_title"))); String newTitle = TaskData.randomTitle(); s.type(By.id("task_title"), newTitle); s.click(By.id("submit_btn")); assertTrue(s.isTextPresent("更新任务成功")); } @Test public void deleteTask() { s.open("/task/delete/2"); assertTrue("没有成功消息", s.isTextPresent("删除任务成功")); } @Test public void inputInValidateValue() { s.open("/task/"); s.click(By.linkText("创建任务")); s.click(By.id("submit_btn")); assertEquals("必选字段", s.getText(By.xpath("//fieldset/div/div/span"))); } }