移动测试 - 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,请按照以下步骤进行操作.

  • 从以下位置下载JDK和JRE  Oracle JavaSE

  • 接受许可协议.

  • 安装JDK和JRE.

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

环境变量

第2步 : 从 SDK 下载Android Studio(由于文件大小,需要一些时间).

  • 双击exe并运行安装程序.

  • 继续使用所有默认选项.

  • 设置ANDROID_HOME.

第3步 : 安装Android图片和工具.

  • 点击SDK Manager :

SDK Manager

  • 选择必要的包装.例如,如果我们正在为Android 4.4.2构建应用程序,请确保在"工具"部分和"减号"下检查以下包:

    • Android SDK工具rev 22.6.3

    • Android平台工具rev 19.0.1

    • Android SDK Build-tools rev 19.1

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

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

AVD Manager

  • 对Nexus5 AVD使用以下设置 :

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

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

    • 确保您在名称中选择带有Google API的目标.

    • CPU:Intel Atom(x86)

    • 选中"使用主机GPU"框

    • 单击确定.

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

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

测试应用程序Appium

要使用Appium测试App,请按照下面给出的步骤 : 去;

步骤1 : 在Android Studio中创建一个名为"RobotiumTest"的测试项目.

Robotium Test

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

第2步 : 将Appium罐添加到您的项目中.单击Project →  App → 复制lib中的所有jar.选择除Selenium,Java客户端和Junit Jar之外的复制的jar,然后右键单击它并单击"Add as Library".

步骤3 : 单击App中的build.gradle.您将看到添加的所有库,如以下屏幕截图所示.

Build 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服务器.

    • 从此处下载Appium for Windows.

    • 双击.exe并安装Appium.

    • 点击图标以显示用户界面.

    • 如果需要,更改端口,如下所示.

    • 单击"播放"按钮以启动服务器.

运行测试用例

  • 通过USB调试连接设备或启动仿真器.

  • 右键单击测试类,然后单击"运行".