Appium用例分模块

背景:

部分模块代码会出现重复使用的情况,为了解决代码重复编写,故将此模块代码直接生成一个模块(module),便于其他模块调用

调用子模块的脚本语法:

From 包名.文件名 import方法1,方法2,方法

示例:将初始化脚本单独形成一个模块

步骤一:Capability.py文件的脚本

#!urs/bin/python

#!_*_ coding:UTF-8 _*_

from selenium.common.exceptions import NoSuchElementException

from appium import webdriver

desired_caps={}

desired_caps['platformName']='Android'

desired_caps['platformVersion']='4.4.2'

desired_caps['deviceName']='127.0.0.1:62001'

desired_caps['app']=r'C:\\Users\\JMC\\Desktop\\Study\\****.apk'    #r后面跟apk的存放路径

desired_caps['packageName']='此处填写包名'

desired_caps['appActivity']='com.********.wifipartner.activity.MainActivity'  #此处需要填写正确的activity

desired_caps['unicodekeyboard']='True'

desired_caps['resetkeyboard']='True'

 

步骤二:test.py文件脚本

#!urs/bin/python

#!_*_ coding:UTF-8 _*_

from find_element.capability import webdriver,NoSuchElementException,desired_caps   #调用capability.py文件内的方法

#检测按钮是否存在函数

def check_imagebutton():  #定义函数名称

    print("check_imagebutton"#输出文本简要说明函数的作用

    try:                        #为元素设置变量名

        imagebutton=driver.find_element_by_id('com.mydream.wifi:id/riv_head')

    except NoSuchElementException:   #若元素不存在,则调用捕获异常的方法

        print("没有这个元素")         #输出文本说明,元素不存在

    else:                            #若元素存在,则对元素执行相应的操作

        imagebutton.click()



driver=webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)

driver.find_element_by_id('com.mydream.wifi:id/tvShare').click()  #点击头条新闻

driver.implicitly_wait(5#以秒为单位

driver.find_element_by_class_name('android.widget.ImageButton').click()  #点击头条新闻页面的返回按钮

driver.find_element_by_xpath("/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.TabHost/android.widget.LinearLayout/android.widget.TabWidget/android.widget.RelativeLayout[3]"

).click()  #点击我页面tab

driver.implicitly_wait(5#以秒为单位

#调用点击登陆入口的按钮的函数

check_imagebutton()

driver.implicitly_wait(10#以秒为单位

driver.find_element_by_id('com.mydream.wifi:id/title_third_login_button').click()  #点击更多按钮

driver.find_element_by_id('com.mydream.wifi:id/cacetMobile').send_keys("18059869253") #输入账号

driver.implicitly_wait(5#以秒为单位

driver.find_element_by_id('com.mydream.wifi:id/cacetPwd').send_keys("123456"#输入密码

driver.implicitly_wait(5#以秒为单位

driver.find_element_by_id('com.mydream.wifi:id/cbtnLogin').click()  #点击登陆按钮

步骤三:

在步骤一和二编辑完成后,在test.py文件页面,按ctrl+shift+F10执行代码即运行

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
以下是一个基本的 Appium 测试微信用例,你可以参考: ``` import unittest from appium import webdriver from time import sleep class WeChatTestCase(unittest.TestCase): def setUp(self): desired_caps = {} desired_caps['platformName'] = 'Android' desired_caps['platformVersion'] = '9.0' desired_caps['deviceName'] = 'device' desired_caps['appPackage'] = 'com.tencent.mm' desired_caps['appActivity'] = '.ui.LauncherUI' self.driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) def test_send_message(self): # 点击通讯录 self.driver.find_element_by_id('com.tencent.mm:id/f8y').click() sleep(2) # 搜索联系人 search_bar = self.driver.find_element_by_id('com.tencent.mm:id/f4h') search_bar.send_keys('测试') sleep(2) # 点击搜索结果中的联系人 search_result = self.driver.find_element_by_id('com.tencent.mm:id/o_') search_result.click() sleep(2) # 点击对话框 dialog_box = self.driver.find_element_by_id('com.tencent.mm:id/aqe') dialog_box.click() sleep(2) # 输入消息 message_box = self.driver.find_element_by_id('com.tencent.mm:id/aqe') message_box.send_keys('Hello World') sleep(2) # 发送消息 send_button = self.driver.find_element_by_id('com.tencent.mm:id/aqd') send_button.click() sleep(2) def tearDown(self): self.driver.quit() if __name__ == '__main__': unittest.main() ``` 在这个例子中,我们使用了 Appium 和 unittest 模块来编写测试用例。setUp() 方法用于初始化测试环境,包括连接设备和启动微信应用程序。test_send_message() 方法是一个测试用例,它模拟了在微信应用程序中发送一条消息的操作。最后,tearDown() 方法用于清理测试环境。 你需要安装 Appium 和 Android SDK,并将微信应用程序安装在模拟器或真实设备上,以便运行这个测试用例

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Miss糖豆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值