当前位置: 首页 > 知识库问答 >
问题:

Appium不能与chrome浏览器一起工作(测试web移动应用程序)

宗政坚白
2023-03-14
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();
    }

}

}

共有1个答案

巫马浩言
2023-03-14

将最新的Chrome版本安装到您的设备/模拟器(以避免无限循环和Chrome在启动时崩溃,这可能是由于Appium内chromeDriver中不支持Chrome版本造成的),并使用以下功能:

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功能,而这些功能并不是为这种用法准备的。

 类似资料:
  • 我已经为我的web服务器(Apache)和WebSocket服务器(PHPWS)安装了let's Encypt(https://letsencrypt.org/)证书。问题是SSL WebSocket在Firefox上运行良好,但在Chrome、Chromium和Opera上却无法运行。我以前尝试过自签名证书和安全WebSocket在Chrome和Chromium中工作。 我的网页位于https:

  • 有一个基于AngularJS的门户网站(一个桌面网站)。我正在使用量角器来测试这个门户网站。该功能是这样的,如果在web门户上执行了一些操作,结果会反映在移动android应用程序中。 我需要自动化这个场景,其中一半的测试是在桌面浏览器上使用量角器完成的,另一半是在移动应用程序上使用Appium(或任何其他工具)自动检查的。 这可能吗?如果是,怎么做?

  • 我正试图通过浏览器链接启动我的android应用程序。 当我通过chrome浏览器打开链接时,它成功地显示了应用程序对话框选择器,它显示了像这样的方案可用的应用程序。 应用程序对话框选择器 但是当链接通过Chrome自定义选项卡打开时,它只是重定向到网站,而不显示应用对话框选择器。 我需要它来启动应用程序或显示对话框选择器,当链接从另一个应用程序(如gmail)打开时,它会打开应用程序内浏览器,而

  • 我有一个原生的移动应用程序,并通过使用Appium驱动程序(AppiumDriver driver)自动运行,该驱动程序工作正常,并通过应用程序的一个功能,例如解锁帐户,向用户发送电子邮件,需要用户确认。 所以我已经找到了如何获得电子邮件中的链接,以及如何从发送电子邮件中获得URL。(保存在字符串变量中,例如“href”) 所以当自动化运行时,我在“信息”窗口中的移动应用程序中,通知用户我们已发送

  • 我正在使用appium自动化iOS应用程序。为了开始申请,我提供了以下能力。 该脚本在模拟器上运行良好,将bundle id替换为app功能。 在我的真实设备中,我已经安装了应用程序,我不想给出应用程序路径。因此,我使用bundle id启动应用程序。但是,我们无法启动。我没有给出browserName,但仍在使用它。从哪里采摘?你能帮我找出这个问题吗? 这里是appium日志为真正的设备运行

  • 问题内容: 在iPhone / iPad / iPod上的Webkit中,点击元素时不会触发为标签的:active伪类指定样式。我该如何触发?示例代码: 问题答案: … 仅应用了一次,而不是每个按钮元素都可以修复页面上的所有按钮。另外,您可以使用这个名为’Fastclick’的小型JS库。它可以加快触摸设备上的点击事件,也可以解决此问题。