网友真实露脸自拍10p,成人国产精品秘?久久久按摩,国产精品久久久久久无码不卡,成人免费区一区二区三区

小程序模板網

appium+python自動化56-微信小程序自動化(摩拜為例)

發布時間:2018-06-15 14:20 所屬欄目:小程序開發教程

前言 
最近微信的小程序越來越多了,隨之帶來的問題是:小程序如何做自動化測試? 
本篇以摩拜小程序為例,介紹如何定位小程序里面的元素

運行環境:

android 7.0 
appium v1.7.1

webview進程

1.小程序和微信公眾號還不太一樣,基本思路差不多,先配置:chromeOptions

 

				
  1. 'chromeOptions': {'androidProcess': 'com.tencent.mm:appbrand0'}

2.androidProcess進程可以通過adb shell去查看,先點開摩拜小程序,然后進adb shell

 

				
  1. C:\Users\admin>adb shell
  2. HWBND-H:/ $ dumpsys activity top | grep ACTIVITY
  3. ACTIVITY com.tencent.mm/.plugin.appbrand.ui.AppBrandUI d0f2ff4 pid=9104
  4. HWBND-H:/ $ ps 9104
  5. USER PID PPID VSIZE RSS WCHAN PC NAME
  6. u0_a119 9104 495 2706272 283720 0 0000000000 S com.tencent.mm:appbrand0
  7. HWBND-H:/ $

3.com.tencent.mm:appbrand0 這個就是我們要找到的了

摩拜小程序  1.先點開微信首頁,下滑頁面,出現小程序菜單后點擊‘摩拜’

2.代碼實現:

 

				
  1. def swipeDown(driver, t=500, n=1):
  2. '''向下滑動屏幕'''
  3. l = driver.get_window_size()
  4. x1 = l['width'] * 0.5 # x坐標
  5. y1 = l['height'] * 0.25 # 起始y坐標
  6. y2 = l['height'] * 0.75 # 終點y坐標
  7. for i in range(n):
  8. driver.swipe(x1, y1, x1, y2,t)
 

向下滑動

swipeDown(driver)  小程序操作  1.進入小程序后點右下角的頭像,這里可以通過坐標去點擊

由于每個手機分辨率不一樣,這里可以直接去計算下圖標在屏幕的比例

2.接著點擊“發紅包賺賞金”

 

				
  1. # 注意,這里是不需要切換的,別踩坑了?。。。。。?/li>
  2. # driver.switch_to.context('WEBVIEW_com.tencent.mm:tools') # 不要加這行
  3. time.sleep(3)
  4.  
  5. # tap觸摸右下角那個菜單坐標 [873,1654], [1080,1861]
  6. driver.tap([(873, 1654), (1080, 1861)], 500)
  7.  
  8. # 點發紅包賺賞金
  9. driver.find_element_by_accessibility_id("發紅包賺賞金").click()

參考代碼

 

				
  1. # coding:utf-8
  2. from appium import webdriver
  3. from appium.webdriver.common.touch_action import TouchAction
  4. import time
  5.  
  6. desired_caps = {
  7. 'platformName': 'Android',
  8. 'platformVersion': '7.0',
  9. 'deviceName': 'A5RNW18316011440',
  10. 'appPackage': 'com.tencent.mm',
  11. 'appActivity': '.ui.LauncherUI',
  12. 'automationName': 'Appium',
  13. # 'unicodeKeyboard': True,
  14. # 'resetKeyboard': True,
  15. 'noReset': True,
  16. 'chromeOptions': {'androidProcess': 'com.tencent.mm:appbrand0'}
  17. }
  18.  
  19. driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
  20.  
  21. time.sleep(10)
  22.  
  23. def swipeDown(driver, t=500, n=1):
  24. '''向下滑動屏幕'''
  25. l = driver.get_window_size()
  26. x1 = l['width'] * 0.5 # x坐標
  27. y1 = l['height'] * 0.25 # 起始y坐標
  28. y2 = l['height'] * 0.75 # 終點y坐標
  29. for i in range(n):
  30. driver.swipe(x1, y1, x1, y2,t)
  31.  
  32. # 向下滑動
  33. swipeDown(driver)
  34. time.sleep(2)
  35.  
  36. # 點開小程序
  37. driver.find_elements_by_id("com.tencent.mm:id/r9")[0].click()
  38. time.sleep(4)
  39.  
  40. print(driver.contexts)
  41.  
  42. # 注意,這里是不需要切換的,別踩坑了?。。。。。?/li>
  43. # driver.switch_to.context('WEBVIEW_com.tencent.mm:tools')
  44. time.sleep(3)
  45.  
  46. # tap觸摸右下角那個菜單坐標 [873,1654], [1080,1861]
  47. driver.tap([(873, 1654), (1080, 1861)], 500)
  48.  
  49. # 點發紅包賺賞金
  50. driver.find_element_by_accessibility_id("發紅包賺賞金").click()


易優小程序(企業版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://www.xiuhaier.com/wxmini/doc/course/24554.html 復制鏈接 如需定制請聯系易優客服咨詢:800182392 點擊咨詢
QQ在線咨詢
AI智能客服 ×