Appium 不适用于 chrome 浏览器(测试网络移动应用程序)
Appium not working with chrome browser (Testing web mobile apps)
我正在使用 Appium,这是一款用于移动设备上的本机和混合应用程序的测试自动化工具,用于测试移动 Web 应用程序。所以我使用 chrome 作为浏览器并配置了所有内容,甚至我尝试在移动设备本身(本机)上使用应用程序并且一切正常。
当我尝试测试移动网络应用程序时出现问题,网页打开时显示 数据; 并立即崩溃,测试无法 运行。
这是我的代码截图:
namespace AppiumTest
{
[TestFixture]
public class Appium_Test
{
//public IWebDriver driver;
private AppiumDriver<AndroidElement> driver;
[SetUp]
public void Setup()
{
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.SetCapability("device", "Android");
capabilities.SetCapability("browserName", "chrome");
capabilities.SetCapability("deviceName", "Huawei Mate 8");
capabilities.SetCapability("platformName", "Android");
capabilities.SetCapability("platformVersion", "6.0");
//For mobile web application
driver = new RemoteWebDriver(new Uri("http://127.0.0.1:4723/wd/hub"), capabilities, TimeSpan.FromSeconds(180));
}
[Test]
public void Browser_Test()
{
driver.Navigate().GoToUrl("www.github.com");
driver.FindElement(By.ClassName("octicon octicon-three-bars")).Click();
}
[TearDown]
public void Teardown()
{
driver.Quit();
}
}
}
为您的 device/emulator 安装最新的 Chrome 版本(以避免无限循环和 Chrome 启动时崩溃,这可能是由不受支持的 Chrome 版本引起的在 Appium 内的 chromeDriver 中)并使用以下功能:
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");
capabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION, "6.0");
capabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "emulator-5554";
capabilities.setCapability(MobileCapabilityType.BROWSER_NAME, "Chrome");`
正确功能的关键在于以下包:
io.appium.java_client.remote.MobileCapabilityType`
如果您不使用它,您将使用基本的 selenium 功能,这些功能不适合这种用法。
我正在使用 Appium,这是一款用于移动设备上的本机和混合应用程序的测试自动化工具,用于测试移动 Web 应用程序。所以我使用 chrome 作为浏览器并配置了所有内容,甚至我尝试在移动设备本身(本机)上使用应用程序并且一切正常。
当我尝试测试移动网络应用程序时出现问题,网页打开时显示 数据; 并立即崩溃,测试无法 运行。
这是我的代码截图:
namespace AppiumTest
{
[TestFixture]
public class Appium_Test
{
//public IWebDriver driver;
private AppiumDriver<AndroidElement> driver;
[SetUp]
public void Setup()
{
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.SetCapability("device", "Android");
capabilities.SetCapability("browserName", "chrome");
capabilities.SetCapability("deviceName", "Huawei Mate 8");
capabilities.SetCapability("platformName", "Android");
capabilities.SetCapability("platformVersion", "6.0");
//For mobile web application
driver = new RemoteWebDriver(new Uri("http://127.0.0.1:4723/wd/hub"), capabilities, TimeSpan.FromSeconds(180));
}
[Test]
public void Browser_Test()
{
driver.Navigate().GoToUrl("www.github.com");
driver.FindElement(By.ClassName("octicon octicon-three-bars")).Click();
}
[TearDown]
public void Teardown()
{
driver.Quit();
}
}
}
为您的 device/emulator 安装最新的 Chrome 版本(以避免无限循环和 Chrome 启动时崩溃,这可能是由不受支持的 Chrome 版本引起的在 Appium 内的 chromeDriver 中)并使用以下功能:
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");
capabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION, "6.0");
capabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "emulator-5554";
capabilities.setCapability(MobileCapabilityType.BROWSER_NAME, "Chrome");`
正确功能的关键在于以下包:
io.appium.java_client.remote.MobileCapabilityType`
如果您不使用它,您将使用基本的 selenium 功能,这些功能不适合这种用法。