Appium自动化测试之微信h5元素识别和代码实战

引子

网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、成都微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了屯溪免费建站欢迎大家使用!


总会有人问微信的自动化测试怎么做。其实我不太明白,为啥你要对ta做自动化测试啊,除非你们公司产品是基于微信做的开发否则没必要。即使一个公众号我也觉得没必要做自动化测试,基本功能点下没问题就可以了,毕竟都是配置的,除非你后台配置错了。(有时候真搞不懂这胡乱的测试,你咋不把整个微信都测一遍啊)

微信的本质


微信其实就是一个混合的app,客户端里嵌入的webview,明白这个就好说了。大家一定要注意,app中的native可以用uiaotumator来查看元素,但webview里的ta是不行的可以使用chrome来查看,这个是很多初学者不明白的地方。

如何查看微信webview中的元素


几个前提:

1、手机打开【开发者模式】

2、app必须是debug模式(别问我怎么弄,自己问开发去)

3、手机通过USB连接电脑,且能够识别出来手机(不会的自己google去。。。)

4、可以*

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
from appium import webdriver
import time
#QQ群522720170
 
desired_caps = {}
 
desired_caps = {
    'platformName': 'Android',
    'platformVersion': '23',
    'deviceName': 'Android Emulator',
    'unicodeKeyboard': 'True',
    'resetKeyboard': 'True',
    'appPackage': 'com.tencent.mm',
    'appActivity': 'com.tencent.mm.ui.LauncherUI',
    'chromeOptions': {'androidProcess': 'com.tencent.mm:tools'}
}
 
 
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
 
time.sleep(10)
driver.find_element('name','发现').click()
time.sleep(10)
driver.find_element('name',"看一看").click()
time.sleep(10)
 
#获取当前上下文
c=driver.contexts
print(c)
#输出结果['NATIVE_APP', 'WEBVIEW_com.tencent.mm:tools']
 
#切换为 webview,名称就是从上面的语句得来的
driver.switch_to.context('WEBVIEW_com.tencent.mm:tools')
 
#获取h4标签的文本并打印出来
titles = driver.find_elements('tag name','h4')
print(titles[2].text)

至此就全部搞定了,是不是很简单?


文章名称:Appium自动化测试之微信h5元素识别和代码实战
文章出自:http://hbruida.cn/article/jepgjc.html

其他资讯