Android模拟器的Appium所需功能

本教程将帮助理解Appium自动化工具。它将介绍所需的功能和带有Maven使用的Appium。

在本教程中,将了解-

  • 期望的功能是什么?
  • 提取文件包和活动信息

所需的功能是什么

“设计的功能”帮助我们在自动化时修改服务器的行为。在Appium中,所有客户端命令都在会话上下文中运行。 例如,客户端向Appium服务器发送包含JSON对象的POST/Session请求。

因此,要发送任何所需的求或维护与服务器的任何所需会话,需要使用一组键和值对。这就是所谓的“DesiredCapabilities”。

import io.appium.java_client.AppiumDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
{
    DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setCapability("deviceName","Android Emulator");
    capabilities.setCapability("platformVersion", "4.4");
}

所需功能的重要作用-

  • “DesiredCapability”帮助用户控制与服务器的会话请求。对于Android会话,或者如果我们想要Android会话,那么我们可以将功能设置为PlatformName=Android。
  • ‘DesiredCapability’用于设置WebDriver实例,例如:FirefoxDriver、ChromeDriver、InternetExplorerDriver等。
  • DesiredCapability对Selenium Grid非常有用。例如:它用于在不同的浏览器和不同的操作系统上访问不同的测试用例。在这里,这些节点是使用‘set’属性方法定义的,例如:

java DesiredCapabilities obj = new DesiredCapabilities(); obj.setBrowserName("firefox"); obj.setVersion("18.0.1"); obj.setPlatform(org.openqa.selenium.Platform.WINDOWS);

  • 所需的功能是库定义的包。在使用“DesiredCapability”之前,应将其从下面提到的库中导入
org.openqa.selenium.remote.DesiredCapabilities

Appium同时支持Android和iOS。因此,有一组单独的Appium服务器功能。

下表描述了一些常用的Android功能及其使用价值-

功能 描述 价值/用途
appPackage 在Android中调用用户想要运行的所需Java包 value=com.example.myapp/ Obj.setCapability(“appPackage”, “com.whatsapp”) ;
appActivity 用户要从包启动的应用程序活动。 Value=MainActivity,.Settings Obj.setCapability(“appActivity”, “com.whatsapp.Main”) ;
appWaitPackage 应用程序需要等待的包 值=com.example.android.myapp
appWaitActivity 用户需要等待时间的任何Android活动 值=SplashActivity capabilities.setCapability(“appWaitActivity”, “com.example.game.SplashActivity”)

参考链接‘https://appium.io/docs/en/writing-running-appium/caps/#android-only’查看更多安卓功能

下表描述了一些常用的iOS功能及其价值-

功能 描述
LaunchTimeout 等待检测的总时间(毫秒) 2000
UDID 识别连接的物理设备的唯一设备号 166aestu4

注意-参阅此链接‘http://appium.io/slate/en/master/?java#ios-only’查看更多iOS功能

提取安装包和Activity信息

包与捆绑的可执行文件、类、资源相关。它给出了移动应用程序开发领域中类似概念。

在Android操作系统中,所有应用程序都是以Java包的形式安装的。因此,要提取包路径信息,需要使用Android PackageManager类。

PackageManager检索安装前和安装后应用程序的包和活动信息,它安装在Android设备上。 可以通过调用 getPackageManager() 来获取PackageManager类的实例。

此方法可以访问和操作已安装应用程序的包和相关权限。

例如

PackageManager pManager = getPackageManager();
List<ApplicationInfo> list = pManager.getInstalledApplications(PackageManager.GET_META_DATA)

总结:

  • 所需的功能始终在键-值对上运行,以便向Appium Server发送命令。
  • 使用‘PackageManager’类提取Android中的应用程序信息。

IT赶路人

专注IT知识分享