问题标签 [ava]

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 投票
1 回答
966 浏览

javascript - 如何让 Observable.flatMap 等待解决

在使用 RxJS 和 React 时,我遇到了如何等待另一个 Observable 的地图中生成的 Observable.fromPromise 中的数据的问题。

我有异步助手:

然后我actions.fetchClients$Rx.Subject

(是的,试图在 RxJS 中模仿 Redux)。

当我测试 时dataStreamGenerator,它可以正常工作(使用ava)并提供数据:

(AVA 会自动订阅 observable 并消费它,所以不需要订阅)。

但是actions.fetchClients$.map((url = CLI...第二张地图(开始......console.log('GOT DATA IN REDUCER: ', val);...仍然是从 DataStream$ 获取 Observable 而不是数据。

我尝试了所有可能的fetchClients$ 代码组合,但仍然没有运气mapflatMap

我的测试代码是:

我不知道如何等待 ObservabledataStreamGenerator(url);发出数据而不是 Observable。

谢谢。

0 投票
1 回答
973 浏览

node.js - AVA 测试设置:“意外的令牌导出”

问题

我正在尝试将 AVA 测试添加到项目中,但我的测试没有使用我的 Babel 设置正确解析 ES2015 模块。对我来说奇怪的是imports 工作正常,如果我运行我的npm run build并运行 REPL 的输出它可以工作......所以似乎 AVA 没有export正确地转换语句或者我的配置有问题package.json?我尝试通读文档并查看其他示例但没有成功。

重现步骤

  1. 克隆https://github.com/trevordmiller/utility-functions
  2. checkouttests分支_
  3. npm install
  4. npm test

得到一个错误(下面的屏幕截图) -export第 7 行的 ES2015 模块错误getURLSlug

AVA 测试错误

0 投票
2 回答
677 浏览

reactjs - Enzyme / React 浅渲染是否昂贵?

我们正在讨论 Enzyme浅层渲染和每次测试在每次测试中重新运行浅层的时间。无论是方法、点击次数、选择器长度等,我建议如果我们在测试运行之前对组件进行一次浅层渲染,而不是每次都进行一次浅渲染,我们的测试可能会运行得更快。

是否有任何专家可以指出哪种方式更快,以及任何一种方式是否存在任何陷阱?这些示例使用的是AVA运行器(为了讨论而略微做作)。

例如,这是一种方式(A)...

这是另一个(B)...

请注意,在测试 B 中,每个测试都有一个新的浅层包装器,而实际上除了 props 没有任何变化。

在 100 次测试过程中,您预计完成时间的差异是多少?

是否有机会在较高范围内进行一次浅渲染(测试 A)会污染测试状态?

0 投票
1 回答
471 浏览

javascript - AVA 单元测试:使用 gulp-ava 测试全局函数

我是使用 AVA 进行 JS 单元测试的新手,我立即遇到了困难:

我的情况是我想运行一个 gulp 任务来运行 AVA 测试并观察测试文件,并且在我编写的测试文件中我需要包含包含要测试的代码的 js 文件。

问题是带有要测试的代码的文件是一个具有所有全局函数的旧 js 文件,因此需要以某种方式填充到 AMD 模块中,但是如何在不更改原始文件的情况下做到这一点?

gulpfile.js

包.json

firstTest.tests.js

谢谢!

0 投票
1 回答
722 浏览

javascript - .env 不适用于 AVA

当我尝试在使用 dotenv-safe 的项目中使用 ava 运行测试时,我收到以下错误

看起来 ava 没有找到 .env 或 .env.example 文件

有什么解决方法或解决方案吗?

这是一个您可以轻松重现该问题的仓库:https ://github.com/sibelius/koa-env-ava

0 投票
1 回答
639 浏览

javascript - 使用 es6 测试框架 (AVA) 测试 es5

我有一个编写 ecmascript5 的现有项目。该项目没有测试,我想添加。我轻轻地使用了 jasmine 和 mocha(不是最近...),现在我读到了 AVA(开箱即用的 es6)+Sinon,我真的很喜欢它,我想尝试一下。

有几件事我有问题弄清楚(也许不可能),我会很感激你的见解。

我有一个文件 1.js,我想在 1.test.js 为它创建测试如何从那里导入\使用对象\方法?我需要重构文件以导出 es6 模块还是有替代解决方案?此外,如果这个文件依赖于 jquery 会发生什么?

正如我现在所看到的,我需要使用 babel+bundler(webpack) 将我的项目转换为一个完整的 es6 项目,然后我就可以开始了。

另一个想法,Ava 有没有办法加载一个页面,它使用脚本标签加载所有脚本,因此一切都可用?

您还有其他建议吗?

任何帮助,将不胜感激。

0 投票
2 回答
1078 浏览

node.js - 如何使用 AVA 和 Mongoose 运行并行测试

基于处理并发和原子测试的讨论(https://github.com/avajs/ava/issues/472

我想要并行测试我的服务器端点的最佳方法。

我正在使用 koajs 服务器和 mongodb 数据库(猫鼬)

我正在尝试使用 Mockgoose ( https://github.com/mccormicka/Mockgoose ) 创建一个临时的内存中 mongod 不会持久化数据

我想知道为每个测试创建一个单独的数据库是否是一个好方法?

有这方面的例子吗?

0 投票
1 回答
382 浏览

javascript - 如何在 AVA 上使用 @decorator (redux-connect) 测试组件 undecorator?

我正在尝试测试一个组件 undecorator,但我没有得到。

例子:

示例测试:

可以测试未装饰的组件吗?如何?

0 投票
1 回答
804 浏览

javascript - 为什么 ava 比较对象列表和对象文字列表失败?

我正在使用deepEqual断言,但我的测试失败

测试

失败输出

问题

我该如何解决?

0 投票
1 回答
345 浏览

node.js - ava 测试运行程序写入 EPIPE 和 ECONNRESET 错误

使用 ava 测试运行程序时出现错误。对于代码:

我得到:

这些错误不会一直出现,它们是非常低级的错误,所以我怀疑它一定是某种服务器配置问题。也许我应该在测试之间引入延迟?Ava 测试在许多进程上产生并同时运行。