zoukankan      html  css  js  c++  java
  • 利用Python的unittest单元测试框架的discover方法批量执行脚本用例

    1.在用Python自动化时,执行单个脚本用例那都是so easying当脚本用例不断地增多时,那就蒙蔽了,一个个来跑到什么时候才跑完,所以discover方法作用就出来,废话不多,小编直接上代码了,如有疑问,可以咨询小编

    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    from selenium import webdriver
    import time,os
    from selenium.webdriver.common.action_chains import ActionChains
    import pickle
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.common.keys import Keys
    from selenium.webdriver.support.ui import Select
    from selenium.common.exceptions import NoSuchElementException
    import unittest, re,os
    import logging
    import math
    from selenium.webdriver.support import expected_conditions as EC
    import time
    import HTMLTestRunner
    #time.strftime('%Y-%m-%d-%H-%M',time.localtime(tim.e.time()))
    import compileall#将py文件编译成二进制的pyc文件
    #compileall.compile_dir(r'H:/game')
    #这样就把game目录,以及其子目录下的py文件编译为pyc文件了

    case_dir = "C:Python34meizhu"

    def creatsuitel():
    testunit=unittest.TestSuite()#初始化一个测试套件
    discover = unittest.defaultTestLoader.discover(case_dir, pattern="test*.py",top_level_dir=None)

    """

    1.discover方法里面有三个参数:

    -case_dir:这个是待执行用例的目录。

    -pattern:这个是匹配脚本名称的规则,test*.py意思是匹配test开头的所有脚本。

    -top_level_dir:这个是顶层目录的名称,一般默认等于None就行了。

    2.discover加载到的用例是一个list集合,需要重新写入到一个list对象testcase里,这样就可以用unittest里面的TextTestRunner这里类的run方法去执行。

    """
    for test_suite in discover:

    for meizhu in test_suite:
    testunit.addTests(meizhu)
    print(testunit)
    return(testunit)

    #利用for循环遍历匹配已test开头脚本文件,然后加载到测试套件中

    #alltestnames = creatsuitel()
    if __name__ == "__main__":
    #runner = unittest.TextTestRunner()
    now = time.strftime('%Y-%m-%d-%H-%M',time.localtime(time.time())) #输出当前时间
    fp=open("result"+now+".html",'wb')
    runner=HTMLTestRunner.HTMLTestRunner(stream=fp,title=u'用例执行情况',description=u'报告:')
    runner.run(creatsuitel())
    fp.close()

  • 相关阅读:
    第三章读书笔记
    第二章读书笔记
    第一章读书笔记
    第四章读书笔记
    《android深入探索》第一章心得
    C语言I博客作业04
    C语言I博客作业03
    C语言I博客作业02
    C语言I博客作业4
    C语言博客作业3
  • 原文地址:https://www.cnblogs.com/Huangsh2017Come-on/p/6882646.html
Copyright © 2011-2022 走看看