移动测试 - Appium 框架


Appium 是一个开源测试自动化框架,用于测试本机和混合应用程序以及移动 Web 应用程序。它使用 WebDriver 协议驱动 iOS 和 Android 应用程序。

Appium的优点

  • 它是免费的并且(大部分)开源。

  • 它有一个得到很好支持且活跃的 Google 小组。

  • 它在 Selenium 3 规范中,所以应该是面向未来的。

  • 它支持 Android 和 iOS。

  • 它不需要在设备上安装任何东西——不需要服务器或代码更改。

Appium 的缺点

  • 不支持智能等待。
  • 在 iOS 上,每台 Mac 一次只能执行一项测试。
  • 对手势的支持有限。
  • 对 Android < 4.1 的支持有限

如何使用Appium

步骤 1 - 使用 Appium 的先决条件是 Java SDK(最低 1.6)。如果您的系统上没有安装 Java,请按照以下步骤操作。

  • 从Oracle JavaSE下载 JDK 和 JRE

  • 接受许可协议。

  • 安装 JDK 和 JRE。

  • 设置环境变量,如下面的屏幕截图所示。

环境变量

步骤 2 - 从SDK下载 Android Studio (由于文件大小,这将需要一些时间)。

  • 双击 exe 并运行安装程序。
  • 继续使用所有默认选项。
  • 设置 ANDROID_HOME。

步骤 3 - 安装 Android 映像和工具。

  • 单击 SDK 管理器 -
SDK管理器
  • 选择必要的包。例如,如果我们正在为 Android 4.4.2 构建应用程序,请确保在“工具”部分下检查以下软件包 -

    • Android SDK 工具修订版 22.6.3
    • Android 平台工具 rev 19.0.1
    • Android SDK 构建工具版本 19.1

第 4 步- 创建 Android 虚拟设备 -

  • 打开 Android Studio,然后单击工具栏中的 AVD Manager。AVD 允许我们测试和运行我们的 Android 应用程序。

AVD管理器
  • 对 Nexus5 AVD 使用以下设置 -

    • 设备:Nexus 5(4.95、1080 x 1920;xxhdpi)

    • 目标:Google API x86 (Google Inc.) - API 级别 19

    • 确保您选择名称中包含 Google API 的目标。

    • CPU:英特尔凌动 (x86)

    • 选中使用主机 GPU 复选框

    • 单击“确定”。

  • 您现在应该在 AVD 管理器中看到您创建的 AVD,您可以在其中启动它、删除它或创建另一个!

步骤 5 - 从Appium下载 Appium jar 文件

使用 Appium 测试应用程序

要使用 Appium 测试应用程序,请按照以下步骤操作 -

步骤 1 - 在 Android Studio 中创建一个名为“RobotiumTest”的测试项目。

机器人测试

选择所有默认选项,直到到达主页。

步骤 2 - 将 Appium jar 添加到您的项目中。点击项目→应用程序→复制lib中的所有jar。选择复制的 jar(Selenium、Java 客户端和 Junit Jar 除外),然后右键单击它并单击“添加为库”。

步骤 3 - 单击应用程序中的 build.gradle。您将看到添加的所有库,如以下屏幕截图所示。

构建 Gradle

步骤 4 - 现在创建一个 Java 类,如下所示 -

AppiumDriver driver;
@Before

public void testCaseSetup()throws Exception {
   //service.start();
   //reader.readFile();
	
   DesiredCapabilities cap = new DesiredCapabilities();
	
   cap.setCapability(MobileCapabilityType.PLATFORM_NAME,"Android");
   cap.setCapability(MobileCapabilityType.DEVICE_NAME, "Android device");
   cap.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT, "4000");
   cap.setCapability(MobileCapabilityType.APP, "c://apk//sample.apk");
	
   driver = new AndroidDriver<MobileElement>("http://127.0.0.1:4444/wd/hub",cap);
}

@Test
public void testcase1()throws Exception {
   driver.findElementByID("Example").click();
   Asser.assertTrue(driver.findElementByID("Example").isDisplayed));
}

@After
public void testCaseTearDown() {
   driver.quit();
}

步骤 5 - 运行测试用例。

  • 单击构建变体并选择单元测试。
  • 使用特定端口“4444”启动 Appium 服务器。
    • 从此处下载 Windows 版 Appium。
    • 双击 .exe 并安装 Appium。
    • 单击该图标可打开 UI。
    • 如果需要,更改端口,如下所示。
    • 单击“播放”按钮启动服务器。
运行测试用例
  • 连接设备并打开 USB 调试或启动模拟器。
  • 右键单击测试类,然后单击“运行”。