mirror of
https://github.com/appium/appium.git
synced 2026-10-24 01:28:55 +08:00
Added Java sample which demonstrates how to run a test against Mobile Safari with Appium
This commit is contained in:
@@ -0,0 +1,77 @@
|
||||
package com.saucelabs.appium;
|
||||
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.openqa.selenium.By;
|
||||
import org.openqa.selenium.WebDriver;
|
||||
import org.openqa.selenium.WebElement;
|
||||
import org.openqa.selenium.remote.DesiredCapabilities;
|
||||
import org.openqa.selenium.remote.RemoteWebDriver;
|
||||
|
||||
import java.net.URL;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
/**
|
||||
*
|
||||
* Simple test which demonstrates how a test can be run against Mobile Safari running on an Appium instance.
|
||||
*
|
||||
* The test is based on https://github.com/appium/appium/blob/master/sample-code/examples/node/safari.js
|
||||
*
|
||||
* @author Ross Rowe
|
||||
*/
|
||||
public class SafariTest {
|
||||
|
||||
private WebDriver driver;
|
||||
|
||||
/**
|
||||
* Instantiates the {@link #driver} instance by using DesiredCapabilities which specify the
|
||||
* 'iPhone Simulator' device and 'safari' app.
|
||||
* @throws Exception
|
||||
*/
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
DesiredCapabilities capabilities = new DesiredCapabilities();
|
||||
capabilities.setCapability("device", "iPhone Simulator");
|
||||
capabilities.setCapability("version", "6.1");
|
||||
capabilities.setCapability("app", "safari");
|
||||
driver = new RemoteWebDriver(new URL("http://127.0.0.1:4723/wd/hub"),
|
||||
capabilities);
|
||||
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
|
||||
}
|
||||
|
||||
/**
|
||||
* Navigates to http://saucelabs.com/test/guinea-pig and interacts with the browser.
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
@Test
|
||||
public void runTest() throws Exception {
|
||||
driver.get("http://saucelabs.com/test/guinea-pig");
|
||||
WebElement idElement = driver.findElement(By.id("i_am_an_id"));
|
||||
assertNotNull(idElement);
|
||||
assertEquals(idElement.getText(), "I am a div");
|
||||
WebElement commentElement = driver.findElement(By.id("comments"));
|
||||
assertNotNull(commentElement);
|
||||
commentElement.sendKeys("This is an awesome comment");
|
||||
WebElement submitElement = driver.findElement(By.id("submit"));
|
||||
assertNotNull(submitElement);
|
||||
submitElement.click();
|
||||
WebElement yourCommentsElement = driver.findElement(By.id("your_comments"));
|
||||
assertNotNull(yourCommentsElement);
|
||||
assertTrue(driver.findElement(By.id("your_comments")).getText().contains("This is an awesome comment"));
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Closes the {@link #driver} instance.
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
@After
|
||||
public void tearDown() throws Exception {
|
||||
driver.quit();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user