前言
要想让手机app自动登录,也就是让app自己操作。所以在脚本中我们需要对app控件进行操作,那么我们需要获取控件的信息。可以使用..\android-sdk-windows\tools目录下的uiautomatorviewer.bat来获取控件相关信息
获取控件相关信息
启动uiautomatorviewer.bat
打开手机app,例如计算器,usb连接电脑,点击uiautomatorviewer左上角的安卓机器人按钮devices screenshot按钮刷新页面
定位元素:移动鼠标到需要定位的元素上,如数字7。右下角可以看到元素对应的属性
登录脚本实现
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
# coding=utf-8
__author__ = "enoch"
# 这是一个app登录的测试
from appium import webdriver
from htmltestrunner import htmltestrunner
import unittest
import time
import warnings
class logintest(unittest.testcase):
def setup( self ):
warnings.simplefilter( "ignore" , resourcewarning)
desired_caps = {
'platformname' : 'android' ,
'devicename' : 'sgeegehiq8i7cikf' ,
'platformversion' : '6.0' ,
'apppackage' : 'com.mengtuiapp.mall' ,
'appactivity' : '.business.main.mainactivity'
}
self .driver = webdriver.remote( 'http://127.0.0.1:4723/wd/hub' , desired_caps)
def testcase( self ):
u """登录"""
driver = self .driver
# time.sleep(2)
driver.find_element_by_id( "bottom_nav" ).click()
time.sleep( 2 )
driver.find_element_by_name( '使用其他方式登录' ).click()
driver.find_element_by_name( '手机登录' ).click()
driver.find_element_by_id( "username" ).send_keys( "13100010001" )
driver.find_element_by_name( '获取验证码' ).send_keys( "9876" )
driver.find_element_by_id( "btn" ).click()
driver.quit()
if __name__ = = '__main__' :
print ( "----------执行---------- " )
suite = unittest.testsuite() # 构造测试集
suite.addtest(logintest( 'testcase' ))
# 定义自动化报告目录
filename = "f:\\report.html"
fp = open (filename, 'wb' )
runner = htmltestrunner(
stream = fp,
title = u '自动化测试报告' ,
description = u '这是登录测试的简单报告'
)
runner.run(suite)
fp.close()
|
到此这篇关于appium+python实现简单的自动化登录测试的实现的文章就介绍到这了,更多相关appium python自动化登录测试内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/cx243698/article/details/86240185