【发布时间】:2013-08-09 07:57:09
【问题描述】:
我来自 QUnit 背景(多年来我一直很高兴使用它)。在我当前的项目中,YUI 是一个选择框架,因此使用 YUI.Test 进行单元测试是合理的。
我使用的是 3.4.0 版。
不幸的是,我遇到了一些意想不到的“功能”。根据文档http://yuilibrary.com/yui/docs/test/#assertions:
“注意:尽管此示例显示多个断言失败,但只要一个断言失败,测试就会停止,从而导致跳过所有其他断言。”
我习惯于在有意义的测试名称下对断言进行分组。如果我有 5 个断言并且其中 2 个失败,我想在测试结果中看到这两个。如果单个测试中有许多失败的断言,我无法一次修复所有断言。我必须“修复”第一个restest,找到另一个……“修复”并重新测试……等等。
当我在本地环境中时,这没什么大不了的。这个问题在持续集成环境中开始变得严重。我不想为每个失败的断言运行构建(在 Bamboo/Jenkins 上)。如果我在一个 TestCase 中有多个测试(这很有可能......),那将是一场噩梦,我的团队将在一天后杀死......
目前我正在使用“解决方法”...每个测试只有一个断言:(这意味着很多测试...
还有其他方法可以解决这个问题吗?
感谢您的帮助!谢谢!
【问题讨论】:
-
我会说你的解决方法就是这个问题的答案。尝试在每个测试中使用一个断言,这会使它们变得小而易于理解。每个断言都有自己的设置/拆卸。
标签: javascript unit-testing continuous-integration yui assertions