我无法在 iOS 模拟器上使用 Appium 与 Safari 移动浏览器进行任何自动化操作。在我的 Java 项目中,Safari 将启动,但浏览器甚至不会导航到指定的网站。谁能告诉我我的代码做错了什么?
1) 在我的 OSX 机器上启动 Appium 应用程序。它配置有以下设置:
IP Address: 127.0.0.1
Port: 4723
Force Device: Checked - iPhone
User Mobile Safari: Checked
(注意:当我运行我的项目时,Appium 应用程序日志屏幕上没有消息滚动。以前,我收到有关缺少 iOS 6.0 库的投诉,但是当我复制 6.1 iOS 库然后将目录重命名为 6.0 时,消息消失了. )
2) 启动 Eclipse 并打开 Appium 项目
3) 右键单击测试代码,然后单击 RunAs Junit
4) iPhone模拟器启动——iPhone iOS 6.1
5) Mobile Safari 启动......然后无处可去(应该去 cnn.com)。我没有错误。
Appium Java 项目真的可以用于移动 Safari 自动化吗?我在 Appium 示例代码仓库中没有看到任何 Safari 自动化的示例。
是什么赋予了?
谢谢,
拉里
------------------Java 代码如下----------------------------- ------------
Eclipse Juno 被用于运行我的 Java/Appium 项目。这是 Java JUnit 项目代码的简化列表(当相应地修改并与 iWebDriver 和已弃用的 iPhoneDriver() 一起使用时,它可以正常工作):
import org.junit.Before;
import org.junit.After;
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;
public class AppiumiPhoneWebDriverDemo {
private String baseUrl;
private WebDriver driver;
@Before
public void setup() throws Exception
{
WebDriver driver;
DesiredCapabilities cap = new DesiredCapabilities();
//cap.setCapability("", "");
//cap.setCapability("browsername", "");
//cap.setCapability("os", "iOS 6.1");
cap.setCapability("device", "iPhone Simulator");
cap.setCapability("app", "safari");
driver = new RemoteWebDriver(new URL("http://localhost:4723/wd/hub"), cap);
baseUrl = "http://www.cnn.com";
}
@After
public void tearDown() throws Exception
{
driver.quit();
}
@Test
public void test_searchWorks() throws Exception
{
this.driver.get(baseUrl);
driver.quit();
}
}