17
Beach Parasol Kris Gybels 2Rivers Don't get burned at the Seaside maandag 9 september 13

Beach Parasol

  • Upload
    esug

  • View
    1.148

  • Download
    0

Embed Size (px)

Citation preview

Beach Parasol

Kris Gybels2Rivers

Don't get burned at the Seaside

maandag 9 september 13

maandag 9 september 13

maandag 9 september 13

maandag 9 september 13

GUI-Testing Smalltalk-AJAX/SJAX web applications with SeleniumCarsten Härle @ ESUG 2012

maandag 9 september 13

Selenium Remote Control

Selenium WebDriver

Proxy server + Javascript injection

Native browser automation support (plugin, ...)

maandag 9 september 13

Selenium Remote Control

Selenium WebDriver

selenium.click("id=the_link");

WebElement element = driver.findElement(By.id("the_link"));element.click();

<aid="the_link"style="display: none"href="http://www.wikipedia.org">Invisible Link to Wikipedia</a>

maandag 9 september 13

Selenium Remote Control

Selenium WebDriver

Selenium selenium = new DefaultSelenium("localhost", 4444,"*firefox", "http://localhost/");

selenium.start();selenium.open("/page.html");selenium.click("id=the_link");

More Object-Oriented API

WebDriver driver = new FirefoxDriver();driver.get("http://localhost/page.html");WebElement element = driver.findElement(By.id("the_link"));element.click();

maandag 9 september 13

WebDriver driver = new FirefoxDriver();ChromeDriverIPhoneDriverAndroidWebDriverHtmlUnitDriver...RemoteWebDriver

Network connection

WebDriver remoteDriver = ...

driver := BPRemoteWebDriver new.

selenium-server-standalone-2.31.0.jar

maandag 9 september 13

maandag 9 september 13

BPRemoteWebDriver

findElementByID: idStringfindElementsByXPath: xpathStringgetPageSourcegetKeyboard

RemoteWebDriver

WebElement findElementById(String using)List<WebElement> findElementsByXPath(String using)String getPageSource()Keyboard getKeyboard()

WebElement

String getAttribute(String name)void click()

BPWebElement

getAttribute: nameStringclick

Keyboard

void sendKeys(CharSequence... keysToSend)

BPKeyboard

sendKeys:

Actions

Actions doubleClick()Actions doubleClick(WebElement onElement)

BPActions

doubleClickdoubleClick:

maandag 9 september 13

maandag 9 september 13

maandag 9 september 13

maandag 9 september 13

Join!

Porting:

VisualWorks, Stephan EggermontSqueak, Tobias PapeYour favorite Smalltalk, You

Completing

maandag 9 september 13

DemoExplicit & Implicit Waiting

maandag 9 september 13

[email protected]

maandag 9 september 13