问题标签 [dart-unittest]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1723 浏览

dart - 如何在 Dart 中等待单元测试中的异步设置?

我的单元测试需要一个需要异步运行的设置。也就是说,我需要在运行测试之前等待设置完成,但设置处理的是 Futures。

0 投票
2 回答
5087 浏览

dart - 异步代码的 UnitTest 示例

在以某种方式阅读了Dart 单元测试后,我仍然无法理解如何将它与Futures 一起使用。

例如:

}); }

因此,在测试中,我创建了一个基本抽象类的实例,DatabaseBase其中包含一些实际MongoDb类的参数,并立即检查它是否已创建。然后我只运行一些非常简单的函数:AddMessage. 这个函数定义为:

并返回completer.future

如果传递message为空,则该函数将失败完成者:.completeError('Message can not be null');

在实际测试中,我想测试是否Future成功完成或有错误。所以以上是我尝试了解如何测试Future返回 - 问题是这个测试没有失败 :(

您能否在答案中写一个小代码示例如何测试返回的函数Future?在测试中我的意思是-有时我想测试返回(成功时)值,如果成功值不正确,则测试失败,而另一个测试应该失败,那么函数将失败Future并进入onError:阻塞。

0 投票
2 回答
59 浏览

dart - 如何使分析警告触发运行时失败

在以下示例中,允许main调用 Dog 上的嗅探函数,我希望它会以某种方式中断。如果我确切地说 Dog 可以做什么,但不知何故,客户端知道得更多,并且可以让对象利用这些特殊知识做更多事情——我认为这是封装泄漏。在一般情况下,我不一定希望它死掉,但是是否有一个标志或运行方式可以强制只调用存在的方法。我知道该语言支持错误的知识,因为 Dart 编辑器显示警告:未为类 'Dog' 定义方法 'sniff'。即使使用--checked标志运行,它也运行良好。

因此,假设测试调用了类似的代码。Dart 中是否有一个标志或某些代码导致它在测试运行时失败?

0 投票
1 回答
474 浏览

dart - 使用 content_shell --dump-render-tree 进行无头测试

我正在使用我的一个项目(标准 unittest htmlconfiguration)在我的 Kubuntu dart 开发框中尝试这个Gist,我没有看到用于测试的浏览器输出位,而是我得到了这个

那我做错了什么?

我正在使用的命令是

0 投票
1 回答
45 浏览

dart - 在 Dart unittest 包中,protectAsyncN 是如何工作的?

我真的不明白protectAsyncN 方法的目的。

有人可以解释一下它应该如何工作吗?例如,想象以下测试用例:

行为应该是什么?我希望这个测试用例能够通过,但是我收到以下消息:

我尝试过使用guardAsync,它按预期工作。但是,我真的不明白protectAsync。

有人可以解释一下它的用途和正确用法吗?非常感谢!

0 投票
1 回答
921 浏览

dart - 单元测试 Http 状态码

如何编写单元测试以返回作为 Future 一部分的响应的状态代码?在被卡住之前我已经走了这么远

这失败并显示消息

然后我尝试了

消息失败

0 投票
0 回答
84 浏览

dart - 单元测试完成后如何关闭 Dartium

单元测试完成(成功或失败)后,Dartium 浏览器保持打开状态。有没有办法从测试中关闭它?

0 投票
2 回答
155 浏览

unit-testing - 在 dart 中重构友好的 mocking

到目前为止,我在 dart 中看到的所有模拟库(unittest/mock、dartmocks)都使用字符串来表示方法调用。例如

问题是当我想重命名 fum 时,IDE 不会接收我的模拟方法调用,所以我必须手动更改它们。

任何人都知道任何与实际方法调用(foo.fum())一起工作的人吗?即类似于Java中的mockito等

0 投票
1 回答
598 浏览

dart - 在 Dart 中读取单元测试的数据文件

我正在使用此代码段在单元测试中读取数据文件:

在 Dart 编辑器中运行我没有收到错误(但没有打印输出),

(编辑:删除命令行错误;dart vm 已过期)

我不需要读取异步文件。

0 投票
2 回答
182 浏览

dart - 模拟课程时发出警告

我正在阅读这篇文章 - https://www.dartlang.org/articles/mocking-with-dart/ - 关于使用 Dart 进行模拟,并且已经让这个简单的示例正常工作。

代码正确打印“BAR”,因此模拟显然有效。但 Dart 编辑器会生成警告/错误:

尽管有这个警告/错误,代码似乎工作,但我想摆脱错误。我怎么做?