unittest

python使用 HTMLTestRunner.py生成测试报告

元气小坏坏 提交于 2019-12-06 16:00:33
HTMLTestRunner.py python 2版本 下载地址: http://tungwaiyip.info/software/HTMLTestRunner.html 使用时,先建立一个”PyDev Package“,将下载下来的 HTMLTestRunner.py 文件拷贝在该目录下。 例子:testcase5_dynamic.py import unittest from dev.widget import Widget class WidgetTestCase(unittest.TestCase): def setUp(self): self.widget= Widget() def tearDown(self): self.widget.dispose() self.widget= None def testSize(self): self.assertEqual(self.widget.getSize(), (40,40), " Wrong " ) def testResize(self): self.widget.resize(100, 100 ) self.assertEqual(self.widget.getSize(), (100,100), " Wrong ") html_report.py: # coding:utf-8 from lib import

记Selenium HTMLTestRunner 无法生成测试报告的总结

一曲冷凌霜 提交于 2019-12-06 15:59:40
使用Python ,HTMLTestRunner 生成测试报告时,遇到很奇怪的问题,明明运行的结果,没有任何报错,就是不生成测试报告,纠结好久。google+baidu搜索结果也不满意,最后终于解决,先总结下。 代码示例 Login.py """ OS:W7 64位 IDE:Pycharm Py:Python2.7.11 """ # -*- coding: utf-8 -*- __Author__ = "xiewm" import time from selenium import webdriver import HTMLTestRunner import unittest from PO_login import LoginPage class Login (unittest.TestCase) : def setUp (self) : self.driver = webdriver.Firefox() self.username = 'xxxxx' self.password = 'xxxxx' def test_user_login (self) : driver = self.driver username = self.username password = self.password login_page = LoginPage(driver) login_page

Appium跑python脚本自动生成简单测试结果报告

早过忘川 提交于 2019-12-06 15:56:39
Appium跑python脚本自动生成简单测试结果报告 1.首先在python目录添加HTMLTestRunner.py文件 (1)找到python的site-packages目录,我的目录为/Library/Python/2.7/site-packages; (2)将HTMLTestRunner.py文件拷贝到以上的文件夹内。 2.Python脚本内添加相应代码 (1)在脚本最前面添加import HTMLTestRunner代码; (2)在脚本最后面添加生成报告样式的代码; 这里写一个简单的脚本,代码如下: import unittest import os from selenium import webdriver from time import sleep import HTMLTestRunner import time class Dttest (unittest.TestCase) : @classmethod def setUpClass (cls) : print( 'start setup' ) desired_caps = {} desired_caps[ 'platformName' ] = 'iOS' desired_caps[ 'deviceName' ] = 'iPhone 6' desired_caps[ 'autoAcceptAlerts' ]

四:python-unittest生成测试报告(HTMLTestRunner)

我的梦境 提交于 2019-12-06 15:55:34
前言 批量执行完用例后,生成的测试报告是文本形式的,不够直观,为了更好的展示测试报告,最好是生成HTML格式的。 unittest里面是不能生成html格式报告的,需要导入一个第三方的模块:HTMLTestRunner 一、导入HTMLTestRunner 1.这个模块下载不能通过pip安装了,只能下载后手动导入,下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html 2.Download下HTMLTestRunner.py文件就是我们需要下载的包。 3.下载后手动拖到python安装文件的Lib目录下 二、demo解析 1.下载Download下的第二个文件test_HTMLTestRunner.py,这个就是官方给的一个测试demo了,从这个文件可以找到该模块的用法。 2.找到下图这段,就是官方给的一个demo了,test_main()里上半部分就是加载测试case,我们不需要搞这么复杂。 参考前面一篇内容就行了 Selenium2+python自动化53-unittest批量执行(discover) 3.最核心的代码是下面的红色区域,这个就是本篇的重点啦。 三、生成html报告 1.我们只需把上面红色区域代码copy到上一篇的基础上稍做修改就可以了,这里主要有三个参数: --stream:测试报告写入文件的存储区域 -

selenium之 输出报告,对HTMLTestRunner进行样式调整后的示例

三世轮回 提交于 2019-12-06 15:53:45
更多关于python selenium的文章,请关注我的专栏: Python Selenium自动化测试详解 修改后HTMLTestRunner下载链接: 下载链接 因为觉得HTMLTestRunner原来的样式太难看,而且都是英文的报告,故而对其进行了一些小小的改动,使其输出中文报告,样式也用bootstrap做了点调整,下面用个示例展示下: # -*- coding: utf-8 -*- import unittest class ExampleCase1 (unittest.TestCase) : u'''此class包含两个用例:add - ok, minus - FAIL''' def setUp (self) : self.a = 4 self.b = 3 def test_add (self) : u'''用例1,add,此用例成功通过''' self.assertEqual(self.a + self.b, 7 ) def test_minus (self) : u'''用例2,minus,此用例执行失败,4-3!=2''' print u'中文xxxxxxxxxxxxxxxxxxxx' self.assertEqual(self.a - self.b, 2 ) class ExampleCase2 (unittest.TestCase) : u''

Python之使用unittest框架和HTMLTestRunner.py文件实现多个测试用例执行与测试报告生成

喜欢而已 提交于 2019-12-06 15:53:02
HTMLTestRunner.py文件下载链接:http://tungwaiyip.info/software/HTMLTestRunner.html 一直想让使用HTMLTestRunner生成的测试报告可以保存在指定的文件目录下,并以当前执行的时间进行命名,在网上有找到一篇这样的文章,链接如下: http://www.cnblogs.com/newvoyage/p/5622854.html 借用相关代码如下(见红框): 但是我使用红框中类似的代码时,整个代码可以正常运行,但是没有生成对应的文件,我使用的是python2.7,不确定是否与版本有关系,不过后面我又想到下面的方式来实现在指定目录下生成以年月日时分秒命名的.html文件 相关代码如下: 在此代码中有关于unittest测试框架使用,如果存在unittest.main()函数,则会执行所有的测试用例(包含setUp()和tearDown()部分),如果想要指定执行单个测试用例,可以用下面的代码 test_unit = unittest_TestSuite() test.unit.addTest(unittest1(test3)) 生成的测试报告如下: 以上为我在学习过程中所遇到的一些问题总结,以此作个记录,以免日后忘记可以很快找到解决方法 来源: CSDN 作者: 泡芙MM 链接: https://blog.csdn

python-生成HTMLTestRunner测试报告

前提是你 提交于 2019-12-06 15:52:37
一、安装HTMLTestRunner HTMLTestRunner 是 Python 标准库的 unittest 模块的一个扩展,它可以生成 HTML的 测试报告。 首先要下 HTMLTestRunner.py 文件,将下载的文件放入…\python\Lib目录下 python2版下载地址: http://tungwaiyip.info/software/HTMLTestRunner.html python3版下载地址: http://pan.baidu.com/s/1dEZQ0pz 在IDLE里引入 HTMLTestRunner 包,如果没有报错,则说明添加成功,如下图: 二、代码 all_tests.py #coding=utf-8 ''' Created on 2017-6-14 @author: 灵枢 Project:通过测试套件执行多个测试用例,并生成报告 ''' import HTMLTestRunner import unittest import os,time listaa = "E:\\selenium_python2\\test_case" def createsuite1 () : testunit=unittest.TestSuite() discover=unittest.defaultTestLoader.discover(listaa,pattern

unittest单元测试

依然范特西╮ 提交于 2019-12-06 14:24:25
转!!!! 单元测试的重要性就不多说了,可恶的是python中有太多的单元测试框架和工具,什么unittest, testtools, subunit, coverage, testrepository, nose, mox, mock, fixtures, discover,再加上setuptools, distutils等等这些,先不说如何写单元测试,光是怎么运行单元测试就有N多种方法,再因为它是测试而非功能,是很多人没兴趣触及的东西。但是作为一个优秀的程序员,不仅要写好功能代码,写好测试代码一样的彰显你的实力。如此多的框架和工具,很容易让人困惑,困惑的原因是因为并没有理解它的基本原理,如果一些基本的概念都不清楚,怎么能够写出思路清晰的测试代码? 今天的主题就是unittest,作为标准python中的一个模块,是其它框架和工具的基础,参考资料是它的官方文档: http://docs.python.org/2.7/library/unittest.html 和源代码,文档已经写的非常好了,我在这里记录的主要是它的一些重要概念、关键点以及可能会碰到的一些坑,目的在于对unittest加深理解,而不是停留在泛泛的表面层上。 unittest是一个python版本的junit,junit是java中的单元测试框架,对java的单元测试,有一句话很贴切:Keep the bar

python中错误、调试、单元测试、文档测试

狂风中的少年 提交于 2019-12-06 12:54:14
错误分为程序的错误和由用户错误的输入引起的错误,此外还有因为各种各样意外的情况导致的错误,比如在磁盘满的时候写入、从网络爬取东西的时候,网络断了。这类错误称为异常 错误处理    普通的错误处理机制就是在出错的时候返回一个错误代码,但是这样十分不方便,一是因为错误码是和正常结果一样的方式返回的,判断起来十分不方便,二是错误还需要一级一级的向上报,直到错误处理程序。 所以高级语言通常都内置了一套 try...except...finally... 的错误处理机制,Python也不例外。 try: A#如果A中的代码执行过程中出错,就会执行B中的代码 except ZeroDivisionError as e: B finally: C#C中的代码无论是否出错都会正常执行(可以不要这个)<br>。。。 如果错误有不同的类型,可以说使用多个except语句,每个语句处理一个类型的错误 另外,可以在except后面加一个else,如果没有出错,会执行else Python 的错误其实也是一个类,所有的异常类型都是从BaseException类派生的 except在捕获错误时,不但捕获该类型的错误,而且还会把子类一网打尽 try: foo() except ValueError as e: print('ValueError') except UnicodeError as e: print

python -- unittest测试用例函数无法传参的处理方法(ddt)

馋奶兔 提交于 2019-12-06 10:57:51
1、超继承   重写测试用例类的init方法,如下所示。 import requests import unittest class XiaoheiCases(unittest.TestCase): def __init__(self,methodName,url,data,cookies=None): super(XiaoheiCases,self).__init__(methodName) self.url = url self.data = data self.cookies = cookies 2、ddt模块 ''' ddt结合unittest来进行数据处理的第三方库,很强大 安装pip install ddt ddt需要和unittest或pytest结合使用 ''' from ddt import ddt,data,unpack import unittest test_print = [1,3] test_b = [[1,2,3],[4,5,6]] @ddt #装饰测试类 class TestMath(unittest.TestCase): @data(test_print) #装饰测试函数,通过这种方式传参,如果通过*test_data传参,则有几个参数,执行几次测试用例 def test_print(self,item): print('item:{0}'