本文介绍了Python nose单元测试框架的安装与使用 ,分享给大家,具体如下:
安装(Python2下安装)
pip install nose
原理与命名规则
Nose会自动查找源文件、目录或者包中的测试用例,符合正则表达式("htmlcode">
nosetests -h
执行并捕获输出:
nosetests -s
查看nose的运行信息和调试信息:
nosetests -v9
输出xml结果报告:
nosetests --with-xunit
支持测试方法传参:
1)安装:需要下载插件“nose_ittr”:
pip install nose_ittr
2)脚本中使用示例:
# -*- coding: utf-8 -*- import os from nose.tools import nottest,istest from nose_ittr import IttrMultiplier, ittr curr_dir = os.path.dirname(os.path.abspath(__file__)) class TestCheckChannels(object): __metaclass__ = IttrMultiplier ''' 测试方法传入两个参数 参数一:channels_txt_name 参数二:check_list_txt_name 使用方法:通过“self.参数名”进行调用 ''' @istest @ittr(channels_txt_name=["channels.txt"],check_list_txt_name=["check_list.txt"]) def test_check_channels(self): channels_txt_path = os.path.join(curr_dir,self.channels_txt_name) check_list_txt_path = os.path.join(curr_dir,self.check_list_txt_name) the_channels = [] with open(channels_txt_path) as channels: for line in channels.readlines(): line = line.strip() if line != '': the_channels.append(line) with open(check_list_txt_path) as check_list: check_items = check_list.readlines() for check_item in check_items: if check_item.strip() in the_channels: pass elif check_item=='\n': pass else: print check_item
3)执行示例:
nosetests --with-html-output --html-out-file=result1.html -v --with-setup-ittr
以上执行将输出html结果报告,但是需要先安装插件:
1)安装:
需要下载插件,在解压缩后在命令行中cd到该目录下:
python setup.py install
通过命令行安装:
pip install nosehtmloutput-2 pip install nose-html-reporting
2)在待测路径打开cmd使用命令如下,就可以执行测试并生成测试结果html文件了:
nosetests --with-html-output --html-out-file=result1.html
工具nose.tools的使用:
1)测试脚本中引入:from nose.tools import nottest,istest;
2)不测试的方法:方法名上加修饰器@nottest;
3)指定为测试方法:方法名上加修饰器@istest(方法名无需符合命名规则);
4)查看要执行的用例列表:nosetests --collect-only -v。
测试项目
脚本示例
from nose.tools import nottest,istest from nose.tools import assert_equal class TestClass: def test_one(self): x = "this" assert 'h' in x def test_two(self): x = "hello" assert hasattr(x, 'check') @nottest def test_three(self): assert True @istest def xxxxx(self): assert True class test_haha(): def setUp(self): print("============test class setup==============") def teardown(self): print("============test class teardown==============") def test_xxx(self): print "test_xxx" assert_equal(9, 9) def test_kkk(self): print "test_kkk" assert_equal(1, 1)
测试执行
测试结果
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?
更新日志
2024年11月19日
2024年11月19日
- 温岚.2001-有点野【阿尔发】【WAV+CUE】
- 房东的猫2018-柔软[科文音像][WAV+CUE]
- 黄乙玲1993-台湾歌古早曲[台湾首版][WAV+CUE]
- 黑鸭子2008-男人女人[首版][WAV+CUE]
- 张佳佳 《FOLK SONG Ⅱ Impromptus OP.23(即兴曲7首)》[320K/MP3][98.71MB]
- 祖海 《我家在中国 (维也纳金色大厅独唱音乐会)》[320K/MP3][118.55MB]
- 祖海 《我家在中国 (维也纳金色大厅独唱音乐会)》[FLAC/分轨][268.08MB]
- 张信哲.1996-思念【EMI百代】【WAV+CUE】
- 江美琪.2024-圆的?圆的>华纳】【FLAC分轨】
- 许巍.2018-无尽光芒【和雅弘嘉】【WAV+CUE】
- 庆怜 CAELAN《THE HALF-BLOOD PRINCE 半血王子》[320K/MP3][65.72MB]
- 庆怜 CAELAN《THE HALF-BLOOD PRINCE 半血王子》[FLAC/分轨][378.53MB]
- Fine乐团《废墟游乐》[320K/MP3][105.13MB]
- 万山红.2009-花开原野万山红Vol.1-2【柏菲】2CD【WAV+CUE】
- 曾庆瑜1992-18首中英文经典全集[台湾派森][WAV整轨]