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

使用selenium和appium的browserstack automate时,请单击浏览器中的android权限

酆浩邈
2023-03-14

我们正在用browserstack制作一个自动化测试套件,用Appium在selenium中进行测试。

在这个测试中,我们需要播放DRM保护的内容,虽然这可以在所有桌面平台上运行,但是我们在android(和ios)的测试中遇到了一些麻烦。因为我们需要点击当视频尝试加载时弹出的“允许”按钮。

我们一直试图点击这个按钮,但没有太大的成功。我们试着摆弄一下水龙头的坐标,但似乎不起作用。

androidDriver.context("NATIVE_APP");
int x = androidDriver.manage().window().getSize().width - 100;
int y = androidDriver.manage().window().getSize().height / 2 + 50;
new TouchAction<>(androidDriver).tap(PointOption.point(913, 1245)).perform();
androidDriver.context("CHROMIUM");

共有1个答案

司马羽
2023-03-14

由于您正在切换到本机上下文,您可以找到allow按钮并单击它。根据您分享的细节和屏幕截图,下面的代码段应该可以完成以下操作:

//switch to native context
driver.context("NATIVE_APP");

//find element with text attribute ALLOW and click it
driver.findElement(By.xpath("//android.widget.Button[@text='ALLOW']")).click();

//switch back to chrome context
driver.context("CHROMIUM");
 类似资料:
  • 我想运行和控制一个浏览器窗口从一个web应用程序,以自动化的一些事情(如帐户创建等)在另一个网站。 所以我的问题是,有没有一种方法可以直接从浏览器使用selenium来实现它,在这种情况下如何实现它? 我知道有selenium-webdriver for JS,但在常见的用例中,我们将它与Node.JS一起使用。 WebDriver介绍建议这是可能的: 它的主要目的是允许web作者编写测试,使用户

  • 问题内容: 在Selenium选项(在Firefox上)中,我可以找到 。 是否可以使用此选项在 Chromium浏览器 (而非Chrome)中运行Selenium测试? 问题答案: 是。用于镀铬 您可以使用的其他选项是 custom, chrome(注意:这不是Google chrome,仅适用于Firefox模式), googlechrome, iexplore。请查看硒文档以获取模式的完整列

  • 问题内容: 我无法使用Appium + Java在Android的权限对话框中点击“拒绝”或“允许”按钮。在点击这些按钮之前,我需要添加任何功能吗?下面是代码: 以下是Eclipse控制台中的错误: 以下是Appium日志: 任何人为克服这一问题的帮助将不胜感激? 问题答案: 使用下面的代码片段,我可以单击所有允许按钮来获取权限。

  • 在web项目中,我们有一个简单的文件浏览器。为了安全起见,我们需要某种映射,即哪些用户角色可以在哪些目录(包括它们的子目录)中读取(R)或读写(RW)。 例子: 用户可以查看文件夹中的文件。 roleA,“folderA/”,R 具有角色的UserB在folderA/中查看和编辑文件,以及查看folderB/ roleB,“folderA/”,RW 到目前为止,项目中使用的一些技术: 挂毯 冬眠

  • 我在Ubuntu Server中设置了一个Selenium Grid,在Ubuntu Desktop中设置了一个Hub,在Ubuntu Desktop中设置了一个Node。Node上的GoogleChrome版本是。我创建会话的python代码是 但是当我传递时,它会出错 硒。常见的例外情况。WebDriverException:消息:转发新会话时出错,找不到:功能{browserName:chr

  • 有可能让selenium使用TOR浏览器吗?有人有什么代码可以复制粘贴吗?