(七)appium+python测试流程

2023-01-31 05:01:07 appium 测试 流程
  • 打开appium server

  • 打开driver

  • 运行case

  • 关闭driver

  • .生成报告html

  • 关闭appium server

  • 发送邮件报告

appium server启动


AppiumServer.py

  • startServer

  • stopServer

  • restartServer

.生成报告:HTMLTestRunner


下载Http://tungwaiyip.info/software/HTMLTestRunner_0_8_2/HTMLTestRunner.py HTMLTestRunner.py文件

再执行

(1)python

(2)import sys

(3)print sys.path

找到一个site-packages的文件夹的路径,将HTMLTestRunner.py文件拷贝到site-packages的文件夹下

在py文件里import  HTMLTestRunner,如果不报错即安装成功的

HTMLTestRunner.py

生成报告方法


TEST_OUTPUT_DIR:测试报告输出路径,默认为根目录            TEST_OUTPUT_FILE_NAME:测试报告输入文件名,默认为index.html       :return:       '''

测试报告输出路径,默认为根目录    output_dir = ''

测试报告输入文件名    single_file = 'index.html'

测试报告文件所在目录    file_path = output_dir +'/'+single_file

获取权限    fp = file(file_path, 'wb')    htmlrunner = HTMLTestRunner.HTMLTestRunner(stream=fp, title=‘test’, description='a test...')    htmlrunner.run(suite)

批量运行case


#执行测试用例方案一如下: #8.2.1先构造测试集 #8.2.1.1实例化测试套件    suite=unittest.TestSuite() #8.2.1.2将测试用例加载到测试套件中。 #执行顺序是安装加载顺序:先执行test_case2,再执行test_case1    suite.addTest(Test('test_case2'))    suite.addTest(Test('test_case1')) #8.2.2执行测试用例 #8.2.2.1实例化TextTestRunner类    runner=unittest.TextTestRunner() #8.2.2.2使用run()方法运行测试套件(即运行测试套件中的所有用例)    runner.run(suite)

'''    '''#执行测试用例方案二如下:(最优)#8.3.1构造测试集(简化了方案二中先要创建测试套件然后再依次加载测试用例) #执行顺序同方案一:执行顺序是命名顺序:先执行test_case1,再执行test_case2    test_dir = './'    discover = unittest.defaultTestLoader.discover(test_dir, pattern='test_*.py') #8.3.2执行测试用例 #8.3.2.1实例化TextTestRunner类    runner=unittest.TextTestRunner() #8.3.2.2使用run()方法运行测试套件(即运行测试套件中的所有用例)    runner.run(discover)  

结果发送至邮件


import smtplib

from email.mime.text import MIMEText

server_host = 'smtp.163.com'

header='ynoteiOS appium testing result'

to='ynotetest30@163.com;hzwujia@corp.netease.com'

frome='ynotetest30@163.com'

with open(file, 'rb')as f:

mail_body = f.read()

msg = MIMEText(mail_body, 'html', 'utf-8')

msg['subject'] = header

msg['to'] = to

msg['from'] = frome

s = smtplib.SMTP()

s.connect(server_host)

s.ehlo()

s.login('ynotetest30@163.com','abc123')

s.sendmail(msg['from'], msg['to'], msg.as_string())

print 'send email sucess!'


相关文章