zoukankan      html  css  js  c++  java
  • Python+Selenium--自动生成HTML测试报告

    Python+Selenium学习--自动生成HTML测试报告

    前言   

            在脚本运行完成之后,除了在log.txt 文件看到运行日志外,我们更希望能生一张漂亮的测试报告来展示用例执行的结果。
            HTMLTestRunner 是Python 标准库的unittest 模块的一个扩展。它生成易于使用的HTML 测试报告。HTMLTestRunner 是在BSD 许可证下发布。
            首先要下HTMLTestRunner.py 文件(百度自行搜索)。

    代码

    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
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    #!/usr/bin/env python
    # -*- codinfg:utf-8 -*-
    '''
    @author: Jeff LEE
    @file: test_baidu.py
    @time: 2019-08-16 14:07
    '''
    import time,os
    import unittest
     
    from  selenium import webdriver
    from selenium.webdriver.common.action_chains import ActionChains
     
    from test_case import HTMLTestRunner
     
     
    class TestBaiDu(unittest.TestCase):
     
        def setUp(self):
            self.driver = webdriver.Firefox()
            # 添加智能等待
            self.driver.implicitly_wait(30)
            self.base_url = 'https://www.baidu.com/'
     
     
        def tearDown(self):
            self.driver.quit()
     
        def test_baidu_search(self):
            u'''百度搜索'''
            driver=self.driver
            driver.get(self.base_url)
            driver.find_element_by_id('kw').send_keys('uniquefu')
     
            driver.find_element_by_id('su').click()
            time.sleep(3)
            # driver.close()
     
        def test_baidu_set(self):
            u'''百度设置'''
            driver = self.driver
            driver.get(self.base_url)
     
            # 进入搜索设置页面
            elment = driver.find_element_by_link_text('设置')
            ActionChains(driver).move_to_element(elment).perform()
            driver.find_element_by_link_text('搜索设置').click()
            time.sleep(5)
     
            # 修改设置
            driver.find_element_by_id('s1_2').click()
            time.sleep(5)
     
            # 保存设置
            driver.find_element_by_link_text('保存设置').click()
     
            # 获取网页上的警告信息并接收警告信息
            alert = driver.switch_to_alert().accept()
            time.sleep(3)
     
            # driver.close()
     
     
    if __name__ == '__main__':
        PATH = lambda p: os.path.abspath(
            os.path.join(os.path.dirname(__file__), p)
        )
     
        # 定义个报告存放路径,支持相对路径
        report = PATH('Report.html')
     
        with open(report, 'wb') as f:
            testunit = unittest.TestSuite()
            testunit.addTest(unittest.makeSuite(TestBaiDu))
            runner = HTMLTestRunner.HTMLTestRunner(f, verbosity=2, title='百度自动化测试报告--uniquefu', description='百度自动化测试报告')
            runner.run(testunit)
  • 相关阅读:
    Gym
    Gym
    Gym
    Gym
    Gym
    bzoj 2734: [HNOI2012]集合选数
    bzoj 1068: [SCOI2007]压缩
    HDU 2899 Strange fuction
    hihocoder #1142 : 三分·三分求极值
    HDU 2824 The Euler function
  • 原文地址:https://www.cnblogs.com/chenlimei/p/12780983.html
Copyright © 2011-2022 走看看