我必须在Appium和Selenium中使用所需的功能吗?

时间:2018-10-26 17:52:34

标签: selenium selenium-webdriver webdriver appium

关于在鸦片或硒中所需功能的使用,我有一个一般性的问题。 我必须在Appium和Selenium中使用所需的功能吗? 如果我使用了错误的期望功能会怎样?我会收到任何错误吗?

3 个答案:

答案 0 :(得分:0)

所需功能

DesiredCapabilities类是默认支持的所需功能的集合,可用于创建所需功能对象,以请求远程Webdriver连接到Selenium服务器或硒网格。

构造函数

DesiredCapabilities类的构造函数如下:

  • DesiredCapabilities()
  • DesiredCapabilities(Capabilities... others)
  • DesiredCapabilities(Capabilities other)
  • DesiredCapabilities(java.util.Map<java.lang.String,?> rawMap)
  • DesiredCapabilities(java.lang.String browser, java.lang.String version, Platform platform)

方法

DesiredCapabilities类中的一些常用方法如下:

  • boolean acceptInsecureCerts()
  • protected int amendHashCode()
  • static DesiredCapabilities android()
  • java.util.Map<java.lang.String,java.lang.Object> asMap()
  • static DesiredCapabilities chrome()
  • static DesiredCapabilities edge()
  • boolean equals(java.lang.Object o)
  • static DesiredCapabilities firefox()
  • java.lang.Object getCapability(java.lang.String capabilityName)
  • Platform getPlatform()
  • int hashCode()
  • static DesiredCapabilities htmlUnit()
  • static DesiredCapabilities internetExplorer()
  • static DesiredCapabilities ipad()
  • static DesiredCapabilities iphone()
  • DesiredCapabilities merge(Capabilities extraCapabilities)
  • static DesiredCapabilities operaBlink()
  • static DesiredCapabilities safari()
  • void setAcceptInsecureCerts(boolean acceptInsecureCerts)
  • void setBrowserName(java.lang.String browserName)
  • void setJavascriptEnabled(boolean javascriptEnabled)
  • void setPlatform(Platform platform)
  • void setVersion(java.lang.String version)
  • java.util.Map<java.lang.String,java.lang.Object> toJson()
  • java.lang.String toString()

对于 Appium ,您可以使用 DesiredCapabilities 类及其任何方法来配置 WebDriver 测试规范

的必需配置的em>实例

答案 1 :(得分:0)

对于Appium

期望的功能错误意味着您将从设备获得Http错误响应,并且测试用例将失败。

答案 2 :(得分:0)

要正确回答您的问题,您应该了解所需的功能以及使用它们的原因。

所需功能是一种告诉任何服务器(硒服务器,应用服务器)自动化的方式,我们期望哪种会话

根据我们的要求,会话可能具有不同的配置。

  1. 在移动设备浏览器上运行测试
  2. 在移动设备应用上运行测试
  3. 在桌面不同的浏览器上运行测试
  4. 在无头的桌面浏览器上运行测试

因此,为了使服务器理解,我们使用DesireCapabilities类将此信息告知服务器。

1。我必须在Appium和Selenium中使用所需的功能吗?

是的,对于Appium和Selenium,必须传递所需的功能

2。如果我使用了错误的期望功能会怎样?

如果使用了错误的期望功能,则服务器可能会抛出错误,或者您可能会从服务器获取不希望的输出,从而导致测试无法执行或它们给出的输出不相关。

不期望的输出  例如,您想在移动设备内部的chrome浏览器上运行测试,但是您的测试正在移动设备的默认浏览器上运行,例如歌剧等

服务器错误 eg 您想在移动设备内的应用上运行测试,但是从服务器收到错误消息,提示未通过强制性所需功能appPackageappActivity,因此服务器终止了会话。