首页 > 技术文章 > python+appium+unitest+HTMLRunner简单实例

luozhongming 2020-08-27 06:54 原文

from appium import webdriver
from HTMLTestRunner import HTMLTestRunner
import unittest
import time
import warnings

'''''手机驱动对象初始化'''''
# def init_driver():
desired_caps = {
'platformName' : 'Android',
# 'platformVersion' : '10.0',
# 设备号
'deviceName' : '79UNW18B15004940',
# 包名
'appPackage' : 'com.ccvideo',
# Activity
'appActivity' : 'com.yizhibo.video.activity_new.Splash1Activity',
#
'noReset' : True
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
class Test_test(unittest.TestCase):
def setup(self):
print("初始化测试环境")
def testcase01(self):
#使用implicitly_wait进行延时操作5秒,找到就操作,如果5秒后还是未找到则系统将报错误
driver.implicitly_wait(5)
# 关闭签到框
driver.find_element_by_id("com.ccvideo:id/sign_close").click()
# 切换到我的tab
time.sleep(1)
driver.find_element_by_id("com.ccvideo:id/tab_message").click()
time.sleep(1)
driver.find_element_by_id("com.ccvideo:id/mine_settings").click()
time.sleep(1)
#断言
    try:
    if driver.find_element_by_xpath("//android.widget.TextView[@text='多语言']").is_displayed(): # 判断是否有多语言录按钮
    result = True
    except Exception:
     result = False
    self.assertEqual(result, True) # 断言
        driver.find_element_by_xpath("//android.widget.TextView[@text='多语言']").click()

if __name__ == '__main__':
print("----------开始执行脚本---------")
suite = unittest.TestSuite()
suite.addTest(Test_test('testcase01'))
filename = r"C:\Users\XXXXX\Desktop\Python\app_test\report\report.html"
fp = open(filename,'wb')
runner = HTMLTestRunner(
stream=fp,
title=u'UI自动化测试',
description = u'这是登录测试的简单报告'
#description=u'简单测试的例子'
)
runner.run(suite)
fp.close()
print("-----------测试执行结束-------------")



推荐阅读