• 1
  • 1
分享

  众所周知,Appium是移动端界面自动化中最常用的开源框架之一,它能够支持 iOS 平台和 Android 平台上app及Web应用测试,支持Mac,Windows操作系统,并且支持多种语言,Java、Python、PHP、C#、js等,让你不受编程语言的束缚 。下面我将展示Appium框架应用测试的一个具体实例。

  一、框架环境安装

  环境搭建需要具备以下软件,如下表:

Y1.png

  环境配置略微复杂些,涉及到多个软件的安装及参数配置等,可参考网上Appium搭建文文档,环境搭建不属于本篇文章的重点,不再赘述。

  二、测试流程操作

  1、安装APK

  打开模拟器,安装好自己要测试的app包 。

Y2.png

  2、启动

  打开Appium-desktop,启动服务,提示the server is running,即为启动成功。

Y3.png

Y4.png

  3、服务参数配置

  接下来就要进行服务参数配置了,选择本地服务,详细配置参数如下:

  ·platformName:平台的名称(iOS, Android, or FirefoxOS)

  ·platformVersion:移动设备的系统版本号,7.1, 4.4

  ·deviceName:设备名称

  ·appPackage:要启动的包名称

  ·appActivity:要启动的Activity(应用入口)

  以上这些服务参数配置均可通过命令在控制台查看到,首次配置后可以进行下保存,以便下次再次使用方便。

Y5.png

  4、脚本录制操作

  点击start session后,就进入到脚本录制和元素定位的页面了,如下图。在这个页面我们可以根据测试需要进行元素的点击,输入文本等操作,形成一个测试脚本(可以指定语言)。

Y6.png

  在模拟器操作后,点击appium-desktop界面的刷新按钮,可以将界面同步到操作屏上点击录制按钮,在操作截屏上点击抓取元素,中间App Source显示界面xml代码,右边是元素的具体信息,Recorder上展示录制代码。左边操作截屏上点击元素不会真正的点击,只是选中的元素,右边会展示元素的定位,点击右边的tap才会真实点击,点击sendkeys表示输入文本。

  我在此进行了输入框的点击,输入,点击“搜索”按钮操作,且将操作的脚本都录制了下来,选用的是Java语言。

  5、脚本编写

  打开IDEA,新建一个maven工程,然后将上一步骤录制的脚本copy到脚本的“sampleTest”部分,复制过来录制的脚本代码有时候可能需要再修改下。上面的setUp类是app的启动参数配置,这部分直接修改下就可以。另外,在pom文件中别忘了引入相关依赖。

Y7.png

Y8.png

  6、脚本执行

  执行脚本,可看到模拟器上会执行刚才录制的操作回放,最后执行通过后,脚本会展示passed,同时模拟器回放完毕。

Y9.png

  三、测试总结   

  通过Appium自动化测试的实例运行,我们也会对Appium测试框架有个更深刻的了解,其实基础的案例运行并不难,可能难点还是在后续你的案例设计上。我在实际操作中也有了很多弯路,包括环境搭建时个软件版本之间不兼容、脚本执行时初始化界面和运行不一致等等,但最终这些都是可以解决的。希望大家都能够亲自操作下,从框架搭建到脚本执行,一定会有很多的收获。



作者:冀欣

来源:51Testing软件测试网原创


  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   微软正在完善必应聊天,将单次会话提高到 10 条,每日上限 120 条之外,正在应用户需求添加新的功能和特性。  微软广告和网络服务主管 Mikhail Parakhin 会回复用户的推文中表示,现在用户呼声最高、要求最多的一个需求就是,保存和必应的聊天记录。从推文信息来看,微软内部正在推进该功能。  另一位用户咨询 Parakhin 是否会在语言方面有进一步的改进。IT之家翻译他的回复内容如下:“我们改进了匈牙利语等一些流行度不高的语言,接下来我们会不断改进本地化,下一个重点目标是希腊语”。作者:故渊原文链接:IT之家(ithome.com)
            0 0 714
            分享
          •   忘了自我介绍了,我是一名软件测试工程师。不知不觉,入行软件测试也有13个年头了。我是51testing09年某期毕业生,我想我那班的小伙伴们很多人如今混的一定比我好,也有很多人早已从事测试开发,对于这一行,我依然苦逼的坚持着,拿着一份不高不低的苦逼薪水,但这不是今天我想讲的重点,真的。我只是认为我的经历与诸君共享一番,即使是反面教材也是有一定意义的。  软件测试网上从以前到现在最热门的话题依然离不开待遇调查,当然这也无可厚非,下面我就用我的工作经历给大家展示一下我的薪水变迁过程,希望能帮到需要了解的人。  09年我毕业了  09年,我从51毕业,不出意外的进入了测试培训的最大出口单位,一家...
            0 0 1560
            分享
          • 软开源了一个Python项目:Playwright,从此又多了一个浏览器自动化工具。之前一直用selenium或splinter。Playwright 可通过单个API自动执行Chromium,Firefox和WebKit浏览器,支持无头浏览器(headless),Linux、macOS、Windows下均可以使用,Playwright提供的自动化技术是绿色的,功能强大,稳定且速度快。Playwright最吸引我的地方在于它可以自己记录你对浏览器的操作,并将这些操作生成可以执行的代码,这简直就是神器,大大提升了浏览器自动化的效率。生成代码只需要执行python -m pla...
            0 0 2719
            分享
          •   见习测试工程师  任职要求:  1.应往届理工科毕业生,有志于在IT行业发展。  2.计算机相关专业;  3.有计算机语言者优先,如:C语言、C++、Java、.Net等。  初级测试工程师  任职要求:  1.一年以上软件测试经验,熟悉各种测试方法、测试工具、测试流程;  2.本科及以上学历,计算机相关专业;  3.有较强的分析问题能力和文字表达能力,逆向思维好;能完成测试方案、测试案例、测试报告的编写;  4.热爱软件测试工作,可以胜任重复性工作;  5.具有较强的沟通理解能力和协调能力,对工作积极主动、认真负责;  中级测试工程师  任职要求:  1.三年以上软件测试工作经验;  2...
            0 0 3582
            分享
          • web兼容性概述定义:软件兼容性测试是指检查软件之间能否正确地进行交互和共享信息。随着用户对来自各种类型软件之间共享数据能力和充分利用空间同时执行多个程序能力的要求,测试软件之间能否协作变得越来越重要。软件兼容性测试工作的目标是保证软件按照用户期望的方式进行交互。平台的兼容性:硬件平台:pc手机pad等,操作系统:AndroidiOSWindowsmaclinux。浏览器:谷歌浏览器火狐浏览器IE浏览器等。web兼容性测试:以浏览器兼容性为主,操作系统和分辨率为辅。明确需求:根据用户需求去找浏览器,市场占有率的浏览器(浏览器最近的三个版本)操作系统:安装虚拟机。浏览器市场占有率浏览器内核阵营操...
            0 0 934
            分享
      • 51testing软件测试圈微信