助焊剂储存 - 单元测试

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了助焊剂储存 - 单元测试相关的知识,希望对你有一定的参考价值。

我正在为几家Flux商店编写单元测试,并遇到了一个小麻烦。

我的商店通常是这样构建的:

storeObj = {
...
}

_secretsetterfunction = function (){}

module.exports storeObj

如您所见,由于setter函数位于store对象之外 - 它不能直接访问。

这提出了一个问题,因为测试/操作存储数据的唯一方法是通过Action - > Dispatcher - >事件监听器(技术上可以删除Action),这不是我想要经历的事情。单元测试商店。

另一种方法是将setter方法实际放在store对象上 - 但这不是我真正想做的事情。

有什么想法吗?

答案

我也有这个问题,使用Jasmine。

我写了一篇关于如何在不使用Jest时获取对这些私有内部函数的引用的博客文章和示例回购:http://bensmithett.com/testing-flux-stores-without-jest/

TL; DR - 使用rewire

另一答案

行动实际上是商店的公共场合。您只需验证操作的效果即可完全测试您的商店。

另一答案

因此,助手团队刚刚在一篇博文中解决了这个问题,尽管他们使用的是他们自己的变种Jest。还是值得一读:

http://facebook.github.io/react/blog/2014/09/24/testing-flux-applications.html?utm_source=javascriptweekly&utm_medium=email

以上是关于助焊剂储存 - 单元测试的主要内容,如果未能解决你的问题,请参考以下文章

IPC中文标准有哪些?

单元测试不了解 XCTest 期望的异步 UI 代码?

四则运算单元测试

单元测试很棒,但是

词频统计单元测试

第1129期对vue.js单文件(.vue)进行单元测试