步骤1.搭建环境
1.下载node.js并安装,然后在cmd命令中输入node -v,出现下图具体的版本号,表示安装成功
2.安装jdk,并配置环境变量,输入javac验证环境变量是否安装成功,如下图所示:表示安装成功
3.安装sdk,并配置环境变量,下载adt,或者sdk都可以,cmd输入andriod,如下图表示安装成功
4.验证adb是否可用,在cmd输入adb,如下图所示:表示安装成功
5.连接真机或者开启模拟器试试,使用adb devices可以查看到设备名称吗?下图表示,设备连接成功,红色箭头指示的就是设备名称。
6.安装python3.6,注意要到python官网下载3.6的,电脑版本是32位就下载32位,电脑版本64位就下载64位,别下载错了,否则不能安装和使用的。如下图所示打开这个idle,表示安装成功了。
7.安装appium,我这里安装的是appium1.6.5的桌面版的,到appium官网下载一个桌面版的,需要翻墙,或者到国内网站下载一个,嗯,首选百度网盘啦,如果选用pip模式安装的话,不能保证能够安装成功的哦,安装过程会提示缺少组件,自己百度查下,把缺少的组件安装上就可以了。appium桌面版本下载成功,直接打开,界面如下图所示:不需要填写任何东西直接点击star servert就可以了
在下图,填写相应的设备数据,点击加号添加即可,添加的数据如下图所示,然后点击保存,方便下次,直接开启服务:
,以上整个环境就搭建完成了。
步骤2.运行脚本,为方便运行,我直接贴出了脚本内容,具体如下
# This sample code uses the Appium python client
# pip install Appium-Python-Client
# Then you can paste this into a file and simply run with Python
# -*- coding:utf-8 -*-
from appium import webdriver#导入webdriver驱动
import time #导入时间
caps = {}
caps["platformName"] = "Android"#平台名
caps["deviceName"] = "df60b23f1f583"#设备名
caps["appPackage"] = "com.fuzhoukunjiang.cwp.gudashi"#包名
caps["appActivity"] =
".activity.WelcomeActivity"#活动名
driver = webdriver.Remote("http://localhost:4723/wd/hub", caps)#通过appium远程启动APP
# ======================在这边编辑测试用例===========================
time.sleep(5) #10s后开始执行测试用例
print("开始执行测试用例")
time.sleep(3)
el1 = driver.find_element_by_xpath('//android.widget.TextView[contains(@text, "大师金股")]')
el1.click()
print("成功点击大师金股")
time.sleep(5)
el1 = driver.find_element_by_id("com.fuzhoukunjiang.cwp.gudashi:id/gr2_denglu_etZhangHao")
el1.set_value("lijing1")
time.sleep(3)
el1 = driver.find_element_by_id("com.fuzhoukunjiang.cwp.gudashi:id/gr2_denglu_etMiMa")
el1.set_value("111111")
time.sleep(3)
el1 = driver.find_element_by_xpath('//android.widget.Button[contains(@text, "登录")]')
el1.click()
time.sleep(3)
print("成功点击登录")
time.sleep(3)
el1 = driver.find_element_by_xpath('//android.widget.TextView[contains(@text, "首页")]')
print("成功点击首页")
time.sleep(3)
el1 = driver.find_element_by_xpath('//android.widget.TextView[contains(@text, "板块风云")]')
el1.click()
print("成功点击板块风云")
time.sleep(3)
el1 =driver.find_element_by_xpath('//android.widget.TextView[contains(@text, "概念")]')
el1.click()
print("成功点击概念")
time.sleep(3)
el1 = driver.find_element_by_xpath('//android.widget.TextView[contains(@text, "周")]')
el1.click()
print("成功点击周")
time.sleep(5)
el1 = driver.find_element_by_xpath("/hierarchy/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.support.v4.view.ViewPager/android.widget.RelativeLayout/android.widget.LinearLayout/android.widget.LinearLayout/android.support.v4.view.ViewPager/android.widget.RelativeLayout/android.widget.LinearLayout/android.widget.LinearLayout/android.widget.RelativeLayout/android.widget.GridView/android.widget.LinearLayout[1]")
el1.click()
print("成功点击第一个数据")
time.sleep(3)
el2 = driver.find_element_by_xpath("/hierarchy/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.view.ViewGroup/android.widget.ScrollView/android.widget.LinearLayout/android.widget.ListView/android.widget.LinearLayout[1]")
el2.click()
print("成功点击第一个数据")
time.sleep(3)
el1 = driver.find_element_by_xpath('//android.widget.TextView[contains(@text, "上证指数")]')
el1.click()
print("成功点击上证指数")
# ====================结束阶段==================
print("测试用例执行完毕")
开启appium的服务,然后点击py脚本的run的run module就可以了,注意py脚本名称要用英文命名,如下图所示:
等待一会,就会自动运行了,这种办法每次都会清空数据,都要重新登录,如下图所示,用例成功执行