问题标签 [lua-busted]

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 回答
349 浏览

lua - 在 Lua 中使用 busted 无法访问模块

我是 Lua 的初学者,我想在我的开发人员中使用单元测试。我决定使用busted一个简单易用的框架来做到这一点。

但是 foo.bar 看起来无法访问......

在他们之外describe是没有问题的。

有人可以解释一下为什么 foo.bar 无法访问describe吗?

谢谢

0 投票
1 回答
1126 浏览

lua - Corona TDD 带有破坏的“未找到模块‘故事板’”

我正在用 Corona 编写一个应用程序,并且来自 TDD 背景,我想为它编写一些单元测试。我通过 luarocks 安装了 busted,大多数东西似乎都运行良好(为每个模块编写了几个小模块和测试套件)。当我正在测试的模块需要 Corona 库时,我开始遇到问题storyboard,这会导致错误"module 'storyboard' not found"

Corona TDD 经验的人有什么建议吗?也许包含 Corona 模块的目录位于 Lua 搜索路径中?

提前致谢!

0 投票
1 回答
139 浏览

api - Lua 语言是否有 Ruby WebMock 等价物?

我正在编写一个 Lua 模块,用于向公共 API 发出请求:

这可行,但我想使用 TDD 来完成整个 API 包装器的编写。

我有一个可以工作的规范(使用破坏的框架),但它向 API 发出了实际请求:

我如何模拟它,就像WebMock在 Ruby 中的工作方式一样,其中不联系实际端点? 解决方案不需要特定于破坏的框架,顺便说一句。

0 投票
3 回答
4457 浏览

unit-testing - 用 busted 测试 lua 脚本

我正在尝试使用 busted 测试我们的 Freeswitch lua 脚本,但遇到了障碍。它的要点是我需要能够监视如下代码

但我似乎无法弄清楚如何构建我应该设置 _G.session 的对象。我可以在https://github.com/chris-allnutt/unit-tested-corona/blob/master/mocks/button.lua找到关于如何使用 busted 的最佳/唯一好的示例,但它似乎使用相同用于构建被破坏的文档所做的模拟对象的简单语法。

我可以看到这对于不需要返回任何内容但我需要能够使用 getVariable 和 setVariable 函数在会话对象中获取和设置变量的简单函数是如何工作的。我的简单模拟对象如下:

测试如下

我最终得到以下例外。/usr/local/share/lua/5.2/luassert/spy.lua:78:尝试索引函数值

在下面的 if 语句中,这个异常是被破坏的库的依赖项 luassert 抛出的

我对 lua 很陌生,所以我似乎只是错过了该语言的一些明显部分,但任何帮助或指针将不胜感激。

0 投票
1 回答
1818 浏览

unit-testing - 如何在 openresty 中使用 busted 进行单元测试?

我有一堆 lua 文件,用于处理 nginx 中的不同 url,如下所示:

每个文件都是一个简单的脚本,没有任何模块结构。当行数和文件数很少时,我手动测试了所有内容,但现在我觉得我需要进行单元测试。Busted 框架看起来像是一个合乎逻辑的选择,尽管我不明白如何将它融入 openresty 模型。

0 投票
1 回答
301 浏览

json - 为 Busted lua 单元测试创​​建 JSON 输出的问题

所以我在busted中设置了一些简单的单元测试。我对LUA有点陌生,所以我可能会遗漏一些明显的东西。

当我运行时:

我在漂亮的终端输出中得到了预期的结果(7 个成功,1 个故意尝试失败)。

然而,我的最终目标是输出 JSON 结果,并拥有一个使用来自多个测试的 JSON 的脚本,以便为我的 WoW 插件开发人员制作一些摘要页面。

当我运行时:

我的终端暂停了片刻,然后我回到了命令行。

没有终端输出,也没有创建任何文件。

我对 lua 比较陌生,而且一般都失败了,你能给我一些建议吗?

这是一个屏幕截图:

在此处输入图像描述

这里是Busted 网站的链接。

0 投票
1 回答
269 浏览

unit-testing - Busted has_error 导致测试出错

我正在尝试使用 busted 对 lua 项目进行单元测试。我有一个看起来像这样的模块:

在我的规范中,我试图断言 setMode 返回错误:

当我运行规范时,由于函数中的错误而出错。这是控制台输出:

它出现了我期望的错误,但问题是测试应该通过,因为我断言它正在返回正确的错误。

0 投票
2 回答
775 浏览

lua - busted No test files found matching Lua pattern: spec

my directory

the contents of the file 'hhh.lua' is the same as file 'btest_spec.lua' (see my directory)

when I run 'busted' (just use commond 'busted') ,it return an error:

when I run 'busted btest_spec.lua' , it success and return :

when I run 'busted *', it success and return :

so ,why busted fail to find file 'btest_spec.lua' when I run 'busted'?

0 投票
1 回答
148 浏览

unit-testing - 立即在脚本中调用的测试代码

我目前正在使用 Busted 为 lua mod 库编写单元测试。有问题的文件定义了一个带有一些函数的模块,然后在底部调用其中一个函数来初始化自身。

我发现的问题是 Busted 似乎正在两次评估所需的文件。

测试

模块

如您所见,虽然我已经简化了代码和名称,但结构并不是出乎意料的(据我所知)。

测试将始终失败,因为#Items._registry始终为 0(并且转储到控制台验证了这一点)。我尝试在方法内部打印,发现它打印了两次;然后我尝试debug.traceback在该功能的顶部使用并找到以下内容。如您所见,堆栈回溯打印了两次,表明代码被评估了两次。

这是其他人遇到过的吗?对于这种情况,我的测试结构是否错误?或者这是一个错误?


0 投票
1 回答
59 浏览

maven - 将 Busted 测试集成到 Maven 构建周期中

我最近的工作是研究将我们为自定义 Kong API 网关插件构建的一些测试集成到我们的标准 Maven 构建中。

当前构建只是将配置脚本移动到正确的位置,以这样的方式打包插件,以便我们的网关版本可以使用 shell 脚本轻松部署。

测试是用 Busted 编写的,一些研究表明,大约在两年前,使用标准 Maven 插件运行 Busted 测试是不可能的。这在2016年仍然不可能吗?

非常感谢。