選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

AbstractWidgetSetIT.java 1.9KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. package com.vaadin.test.defaultwidgetset;
  2. import org.junit.Assert;
  3. import org.junit.Before;
  4. import org.junit.Rule;
  5. import org.openqa.selenium.By;
  6. import org.openqa.selenium.WebElement;
  7. import org.openqa.selenium.phantomjs.PhantomJSDriver;
  8. import com.vaadin.testbench.ScreenshotOnFailureRule;
  9. import com.vaadin.testbench.TestBenchTestCase;
  10. import com.vaadin.testbench.elements.ButtonElement;
  11. import com.vaadin.testbench.elements.LabelElement;
  12. import com.vaadin.testbench.elements.TextFieldElement;
  13. public abstract class AbstractWidgetSetIT extends TestBenchTestCase {
  14. @Rule
  15. public ScreenshotOnFailureRule rule = new ScreenshotOnFailureRule(this,
  16. true);
  17. @Before
  18. public void setup() {
  19. // Screenshot rule tears down the driver
  20. setDriver(new PhantomJSDriver());
  21. }
  22. protected void testAppStartsUserCanInteract(String expectedWidgetSet) {
  23. getDriver().get("http://localhost:8080");
  24. TextFieldElement nameInput = $(TextFieldElement.class).first();
  25. nameInput.setValue("John Dåe");
  26. $(ButtonElement.class).first().click();
  27. Assert.assertEquals("Label shown", 2,
  28. $(LabelElement.class).all().size());
  29. Assert.assertEquals("Thanks John Dåe, it works!",
  30. $(LabelElement.class).get(1).getText());
  31. Assert.assertEquals(expectedWidgetSet,
  32. findElement(By.id("widgetsetinfo")).getText());
  33. }
  34. protected void assertNoUnknownComponentShown() {
  35. Assert.assertEquals(0,
  36. findElements(By.className("vaadin-unknown-caption")).size());
  37. }
  38. protected void assertUnknownComponentShown(String componentClass) {
  39. WebElement unknownComponentCaption = findElement(
  40. By.className("vaadin-unknown-caption"));
  41. Assert.assertTrue(unknownComponentCaption.getText().contains(
  42. "does not contain implementation for " + componentClass));
  43. }
  44. }