Changelog
nose2使用语义版本控制(当前为0.x)和流行的“keep a changelog”格式(v1.0.0)。
在任何版本中,nose2都尽量不破坏向后兼容性。在v1.0之前,版本是有编号的 0.MAJOR.MINOR
。主要版本引入了新功能或包含必要的突破性更改。次要版本主要用于错误修复或不太可能破坏用户测试套件的小功能。
未发布
0.14.1(2024-01-28)
修复了在较新的 Python (3.12.1+)上以详细模式报告跳过的测试,在该模式下,跳过的测试不再被视为“已开始”。
nose2
将不会引入StartTestEvent
在这种情况下,修复是狭义的,并对测试报告进行调整。
0.14.0(2023-10-04)
添加官方对…的支持
python3.12
移除对以下各项的支持
python3.6
和python3.7
0.13.0(2023-04-29)
删除对python2和较早的python3版本的支持
修复了对python3.12的支持,以避免有关
addDuration
。感谢 @cclauss 为了解决问题!nose2
包元数据被转换为pyproject.toml格式,使用setuptools
。建房nose2
来自源代码的包现在需要setuptools>=61.0.0
或与PEP 517兼容的构建前端(例如build
)。nose2
许可元数据的格式和内容已更正,以便在SDIST和WELL分发版中正确分发。谢谢 @musicinmybrain 感谢您帮助研究这一问题!
0.12.0(2022-07-16)
备注
0.12.x系列将是的最终版本 nose2
它支持Python2。
改变
传球
--junit-xml-path
现在隐含着--junit-xml
在使用Junitxml插件时。这意味着--junit-xml
在以下情况下可以省略标志--junit-xml-path
是指定的。 (#521 )消除对…的依赖
coverage
。现在使用Coverage插件需要您安装coverage
独立,或使用额外的,nose2[coverage_plugin]
。结果,nose2
不再具有任何严格的依赖关系消除对…的依赖
six
,取而代之的是使用卖方提供的副本。这确保了对nose2
不与应用程序依赖项冲突
远离的
nose2
不再提供基于当前Python版本命名的入口点,例如nose2-3.8
在 Python 3.8上。只有nose2
提供了命令。移除对以下各项的支持
setup.py test
在……上面nose2
它本身。SetupTools不建议使用这种用法。开发人员为nose2
鼓励您使用tox
运行nose2
的测试套件,根据贡献指南。
0.11.0(2022-02-12)
这是的第一个版本 nose2 使用 sphinx-issues 在ChangeLog中对贡献者进行表彰。
补充
测试类现在将其简短描述(文档字符串的第一行)打印在详细输出中
Junitxml插件现在设置
timestamp
在每一个上testcase
节点作为ISO-8601时间戳。感谢 @deeplow 感谢大家的贡献!
改变
取消对Python3.5的支持
现在正式支持Python3.10。将尽最大努力支持Python3.11-dev。感谢 @hugovk 和 @tirkarthi 感谢他们的贡献!
nose2
source code is now autoformatted withblack
andisort
nose2
has switched its main development branch frommaster
tomain
现在使用以下方式发布版本 build
固定的
在使用多处理插件运行时添加对测试类的支持。感谢 @ltfish 对于最初的捐款和 @stefanholek 对于这一变化的提炼!
各种文档修复
0.10.0(2021-01-27)
补充
支持子测试!
插件作者关于子测试支持的注意事项:
子测试失败将产生
TestOutcomeEvent
使用outcome = "subtest"
子测试事件可以是失败的,但它们并不表示成功--如果没有子测试失败,则包含的测试将发送成功事件
改变
取消对Python 3.4的支持
现在正式支持Python 3.8和3.9
改进多进程插件的帮助文本
-N
选项当以较低的冗余度运行时(例如,使用
-q
),nose2
将不再在测试报告前打印空行
固定的
插件注册表将不再包含重复的插件和/或基础
event.Plugin
实例修复功能测试用例实现
id
,__str__
,以及__repr__
。这将移除注入的transplant_class.<locals>
从报告输出Doctest加载现在将跳过
setup.py
项目根目录中的文件修饰的类方法(例如,用
mock.patch
)不再被函数加载器错误地拾取
0.9.2(2020-02-02)
补充
添加
--junit-xml-path
添加到junit插件参数列表中。
固定的
现在可以同时使用多进程和覆盖率插件,只要所有的覆盖率配置都放在配置文件中
与较新的 Python (3.8,3.9)兼容的小改动
0.9.1(2019-04-02)
改变
教授插件现在使用
cProfile
而不是hotshot
用于性能分析,因此现在支持不包含以下内容的python版本hotshot
跳过的测试现在在junit XML中包含用户的原因
message
字段
固定的
prettyassert插件处理不当的多行函数定义
当插件已经通过config启用时,使用插件的cli标志不再出错--而是一个no op
0.9.0(2019-03-17)
补充
nose2.plugins.paytyassert,启用
--pretty-assert
,它漂亮地打印AssertionError由assert
报表
改变
将trove分类器从“alpha”状态更新为“beta”
eoled python版本的清理代码
远离的
已放弃对以下各项的支持
distutils
。安装现在需要setuptools
固定的
结果报告程序尊重其他插件设置的故障状态
JUnitXML插件现在在其输出中包含跳过原因
0.8.0(2018-07-31)
补充
添加代码以启用文档插件
远离的
对python 3.3的放弃支持
固定的
对于JUnitXML插件,如果不存在类名,请使用测试模块代替类名
0.7.4(2018-02-17)
补充
安装工具调用现在处理覆盖率
改变
正在运行
nose2
通过setuptools
现在将触发CreateTestsEvent
和CreatedTestSuiteEvent
固定的
敬重
fail_under
在覆盖配置中从压缩蛋加载安装工具时避免无限递归
现在,手册页呈现可重复性
MP文档生成现在可复制
0.7.3(2017/12/13)
补充
支持python 3.6。
固定的
由于.coveragerc不在清单中,测试失败
0.7.2(2017/11/14)
包括对版本的更改 0.7.1
,从未发布过。
固定的
用docstring分层进行适当的测试缩进
MP插件现在调用子进程中的StartSubprocess
改变
添加makefile以启用“快速启动”工作流
已删除bootstrap.sh和test.sh
固定的
覆盖率报告期间自动创建.coverage文件
更好地处理导入失败
0.7.0(2017-11-05)
注意:v0.7.0删除了几个不受支持的python版本
补充
添加层设备事件和挂钩
JUnit XML:在“System Out”中添加日志
向加载器提供完整的exc_信息。加载测试失败
改变
将cov core替换为cover插件中的cover
当无法导入testname时给出更好的错误
当测试无法加载时出错率更好
允许在python 3上组合MP和outputbuffer插件
远离的
丢弃了不受支持的python 2.6、3.2、3.3
nose2.compat
因为不再需要它而被删除。如果你有from nose2.compat import unittest
在代码中,需要用替换它import unittest
.
固定的
防止因unicodedecode错误而崩溃
修复Unicode流编码
0.6.5(2016-06-29)
补充
添加 nose2.__version__
0.6.4(2016-03-15)
固定的
MP永远不会产生比测试更多的进程。例如,当仅运行一个测试时,仅派生一个进程
0.6.3(2016-03-01)
改变
添加对python 3.4、3.5的支持
0.6.2(2016-02-24)
固定的
修复覆盖率的覆盖率插件测试==3.7.1
0.6.1(2016-02-23)
固定的
缺少添加到包中的测试文件。
0.6.0(2016-02-21)
补充
JUnit XML报表支持属性
添加 createdTestSuite 事件,在测试加载后激发
改变
提高测试覆盖率
改进CI
当测试加载失败时,打印回溯
固定的
JUnit XML插件已在Windows上修复
在尝试加载测试之前确保它们是可导入的
当安装失败时,测试失败而不是跳过它
使
collect
插件与层一起工作修正覆盖率插件以考虑导入时间覆盖率
0.5.0(2014-09-14)
补充
使用“设置”和“拆卸”装饰器设置函数的设置和拆卸
用于跳过测试的DunderTests插件 __test__ == False
cartesian_params decorator
覆盖插件
用于在鸡蛋中发现测试的发现仪
支持 params 具有 such
在JUnit XML中包括日志记录输出
改变
such 如果未加载层插件,则早期出错
允许使用 nose2.main() 从测试模块中
固定的
这样的DSL忽略了两个 such.A 描述相同
将跳过的测试记录为“跳过”而不是“跳过”
Unicode字符的结果输出失败
修复Windows上的多处理插件
确保插件写入事件流
多处理可能会锁定主进程并无法退出
JUnit报告路径对CWD中的更改敏感
如果测试用例 __init__ 引发异常
插件失败不再使整个测试运行崩溃
处理测试设置和拆卸中的错误
修复xfail测试的报告
日志捕获等待时间太长,无法将可变对象呈现为字符串
层插件没有从更高版本运行testsetup/testeardown such 层
0.4.7(2013-08-13)
补充
启动dir配置选项。多亏了圣潘·克莱恩。
详细标志的帮助文本。感谢蒂姆·桑普森。
在自述文件中添加了徽章。多亏了奥马尔卡茨。
改变
更新了六个版本的要求,以减少限制。多亏了圣潘·克莱恩。
清除了许多PEP8违规行为。多亏了奥马尔卡茨。
固定的
已修复collector.py中损坏的导入。感谢肖恩·克拉普顿。
修复了MP插件中的进程命令行选项。感谢蒂姆·桑普森。
修复了多进程插件中类设备的处理。感谢蒂姆·桑普森。
修复了由不确定的密钥排序导致的间歇性测试失败。多亏了圣潘·克莱恩。
修复了printhooks中的语法错误。感谢蒂姆·桑普森。
已修复变更日志中的格式设置。多亏了奥马尔卡茨。
修正了文档和示例中的拼写错误。感谢蒂姆·桑普森。
0.4.6(2013-04-07)
改变
docs note支持python 3.3。感谢Omer Katz的错误报告。
固定的
修复了python 2.7上编译器包的拒绝警告。谢谢麦克斯·阿诺德。
修复了JUnitXML异常报告中缺少时间信息的问题。谢谢维亚切斯拉夫·杜卡斯基。
已清除JUnitXML XML输出。谢谢菲利普·泰姆。
0.4.5(2012-12-16)
固定的
修复了attrib和layers插件之间的中断交互。它们现在可以一起使用。谢谢@fajpunk。
修复了层设置/拆卸和测试设置/测试拆卸方法的错误调用顺序。再次感谢@fajpunk的测试和修复。
0.4.4(2012-11-26)
固定的
固定的层排序键生成。
0.4.3(2012-11-21)
固定的
非安装工具的固定包装,python 2.7之前版本。感谢Fajpunk的帮助。
0.4.2(2012-11-19)
补充
补充
uses
方法到such.Scenario
允许在此类DSL测试中使用外部定义的层。
固定的
修复了不可预知的层测试顺序。
0.4.1(2012-06-18)
包括对版本的更改 0.4
,从未发布过。
固定的
修复了包装错误。
补充
nose2.plugins.layers支持Zope测试风格的夹具层。
nose2.tools.such,一个类似DSL的规范,用于编写带有层的测试。
nose2.plugins.loader.load tests以支持unittest2加载测试协议。
0.3(2012-04-15)
补充
nose2.plugins.mp支持跨多个进程分发测试运行。
nose2.plugins.testclasses支持从非unittest.testcase子类的普通类加载测试。
nose2.main.PluggableTestProgram
现在接受一个extraHooks
关键字参数,允许将任意对象附加到挂钩系统。
改变
默认脚本目标已从更改为
nose2.main
到nose2.discover
. 前者仍然可以用于运行单个测试模块,UnitTest样式。后者忽略了module
参数。感谢@dtcaciuc提供的错误报告(32)。
固定的
修复了导致跳过原因始终设置为
None
.
0.2(2012-02-06)
补充
nose2.plugins.junit xml支持junit xml输出
nose2.plugins.attrib支持按属性筛选测试
改变
添加了aftertestren挂钩并将结果报告输出调用移动到该挂钩。这可以防止StopTestRun挂钩出现插件排序问题(该挂钩仍然存在,并在测试运行后激发)。
固定的
修复了按名称加载测试时导致导入错误被静默忽略的错误。
修复了几个模块中丢失的单元测试标志。感谢Wouter Overmeire的贴片。
固定模块夹具调用函数、生成器和参数测试。
修复了将命令行参数值传递给列表选项的问题。在此修复之前,列表列表将附加到选项目标。现在,选项目标列表扩展为新值。感谢Memedough的错误报告。
0.1(2012-01-19)
首次发布。