网络编程
位置:首页>> 网络编程>> Python编程>> 基于python实现微信收红包自动化测试脚本(测试用例)

基于python实现微信收红包自动化测试脚本(测试用例)

作者:软件测试自动化测试  发布时间:2022-01-03 11:38:34 

标签:python,微信收红包,自动化测试

测试用例(1) 

基于python实现微信收红包自动化测试脚本(测试用例)

测试用例(2)

基于python实现微信收红包自动化测试脚本(测试用例)

代码如下(python):


# coding=utf-8

from appium import webdriver
import time

desired_caps = {

'platformName': 'Android',
               #使用哪种平台
               'deviceName': '158bcb1',
               #启用设备名称
               'platformVersion': '5.1',
               #指定平台的系统版本
               'appPackage': 'com.tencent.mm',
               #待测试的app的package
               'appActivity': 'com.tencent.mm.ui.LauncherUI'
               #待测试的Activity的名字
               }

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

time.sleep(5)
#打开微信后等待5s时间

'''
def getSize():
   x = driver.get_window_size()['width']
   y = driver.get_window_size()['height']
   return(x,y)
def swipeUp(t):
   l = getSize()
   x1 = int(l[0] * 0.5)
   y1 = int(l[1] * 0.75)
   y2 = int(l[1] * 0.25)
   driver.swipe(x1,y1,x1,y2,t)
'''
num = 0
num0 = 0
while 1:
       driver.find_element_by_id("com.tencent.mm:id/an7").click()
       #点开最顶端的群聊
       try:
               driver.find_element_by_id("com.tencent.mm:id/a92").click()
               #如果有多条消息未读按钮,则点击以到达未读消息顶端
       except:
               while num0 < 5:
                       if num < 5:
                               try:
                                       driver.find_element_by_id("com.tencent.mm:id/abz").click()
                                       #如果找到红包,则打开
                               except:
                                       driver.swipe(300,1000,300,300,0)
                                       num0 += 1
                                       #没有找到红包,则向上大幅度划动一次,num0+1
                               try:
                                       driver.find_element_by_id("com.tencent.mm:id/bv8").click()
                                       #如果打开了红包,则点击“开”
                               except:
                                       num += 1
                                       #如果五次打不开红包,则认为此群的没有可以继续打开的红包,退出群聊
                               try:
                                       driver.find_element_by_id("com.tencent.mm:id/hg").click()
                                       #领取完红包之后,点击左上角的箭头以返回
                               except:
                                       pass
                               try:
                                       driver.find_element_by_id("com.tencent.mm:id/bsv").click()
                                       #如果红包未领取完已过期,则点击×返回
                               except:
                                       pass
                               driver.swipe(100,450,100,200,0)
                               #向下滑动以找到下一个红包的位置
                       else:
                               break
               try:
                       driver.find_element_by_id("android:id/text1").click()
                       #执行完毕,退出群聊
               except:
                       driver.find_element_by_id("com.tencent.mm:id/h1").click()
                       #如果点开了公众号列表,则点击左上角退出
       num = 0
       num0 = 0
       time.sleep(1)
       driver.swipe(100,400,100,200,0)
       #找到下一个群聊的位置

'''
names_all = driver.find_elements_by_id("com.tencent.mm:id/an7")
#"com.tencent.mm:id/an7"为所有昵称的id,首先收集所有昵称的id到变量names_all
target = "434脱单率100%"
target_trans = target.decode("utf-8")
for n in names_all:
   if n.get_attribute("text") == target_trans:
       n.click()
       break
'''
#测试工具为appium

 

来源:https://blog.csdn.net/ZangKang1/article/details/118547251

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com