2017年12月12日 17:15:29 布耀布耀德 阅读数:973 标签: 单元测试pythonappiumapp 更多
个人分类: 随记
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Near1314you/article/details/78783930
#coding:utf-8
from appium import webdriver
import time
import unittest
import os
import HTMLTestRunner
from selenium.webdriver.support.ui import WebDriverWait
class LoginTest(unittest.TestCase):
def setUp(self):
desired_caps={}
desired_caps['platformName'] = 'Android' #Android系统 or IOS系统
desired_caps['deviceName']='D1CGAPE6C2902581' #真机或模块器名
desired_caps['platformVersion'] = '7.1.1' #Android系统版本
desired_caps['appPackage']='com.appPackage' #APP包名
desired_caps['appActivity']='com.appPackage.WelcomeActivity' #APP启动Activity
desired_caps['noReset']=True #每次打开APP不开启重置,否则每次都进入四个欢迎页
desired_caps['resetKeyboard'] = True #隐藏键盘
self.driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps) #启动APP
def test_login(self):
driver = self.driver
# 进入首页后点击我的按钮
time.sleep(5)
driver.find_element_by_id('ActivityMainTabMe').click()
time.sleep(2)
# 跳转到登录界面清空账号输入框并输入用户名
driver.find_element_by_id('LoginUserED').clear() #APP有保存用户名功能
driver.find_element_by_id('LoginUserED').set_value('18888888888')
# 清空密码输入框并输入密码
driver.find_element_by_id('LoginPwdED').clear()
driver.find_element_by_id('LoginPwdED').set_value('123456')
# 点击登录按钮
driver.find_element_by_id('LoginBtn').click()
time.sleep(5)
# 我的的APP登录成功后会返回到首页,需要再次点击我的进入个人中心页面
driver.find_element_by_id('ActivityMainTabMe').click()
# 获取登录后的昵称
name = driver.find_element_by_id('MeNameTv').text
# 添加断言,若昵称不正确,则打印错误信息
try:
assert '黄大大' in name
print('loginUser is right')
except AssertionError as e:
print('loginUser is Error')
# 点击右上角设置,进入设置页面
driver.find_element_by_id('MeSetting').click()
# 点击退出按钮
driver.find_element_by_id('SettingExitLoginBtn').click()
# 弹出退出提示界面,点击确定
driver.find_element_by_id('android:id/button1').click()
def tearDown(self):
self.driver.quit()
if __name__ == '__main__':
#构造测试套件
suite=unittest.TestSuite()
suite.addTest(LoginTest("test_login"))
#按照一定格式获取当前时间
now=time.strftime("%Y-%m-%d %H_%M_%S")
##将当前时间加入到报告文件名称中,定义测试报告存放路径
filename='F:\ ' + now + 'result.html'
#定义测试报告
fp=open(filename,'wb')
runner=HTMLTestRunner.HTMLTestRunner(stream=fp,title='测试报告',description='用例执行情况:')
runner.run(suite)
#关闭报告
fp.close()