【问题标题】:Testing in node.js with mocha - Newbie使用 mocha 在 node.js 中进行测试 - 新手
【发布时间】:2013-12-13 06:40:25
【问题描述】:

我已经开始在我的 JS 项目中实现 TDD。为此,我实施了 mocha。因为这些是我所做的第一步:

  • 已安装 node.js
  • 在我的项目中全局和本地安装 mocha。
  • 编写 package.json 设置依赖项。
  • 编写了 makefile。
  • 编写 .gitignore 以避免上传 node_modules 文件夹。

文件夹结构

项目

--js ----filetotest.js

-- 测试 ---- test.js

我想要做的是运行命令 make test 以便在 test.js 中运行测试 filetotest.js 文件的测试。 我阅读了关于使用导出的 node.js 方法。但是有什么方法可以将文件包含在测试套件中?

我被困在这里,我认为我的疑问更多是关于概念而不是技术问题。非常感谢您的帮助。

澄清一下我想做的事情: https://nicolas.perriault.net/code/2013/testing-frontend-javascript-code-using-mocha-chai-and-sinon/

我想通过命令行得到类似的结果。

非常感谢,

吉列尔莫

【问题讨论】:

    标签: javascript node.js unit-testing testing mocha.js


    【解决方案1】:

    你做得对。

    现在从 filetotest.js 导出您的函数,如下所示:

    var f1 = function(params) {
      // ...
    }
    
    exports.f1 = f1
    

    test.js 中,需要这个文件

    var f1 = require("./filetotest.js").f1
    
    // test f1
    

    顺便说一句,如果您将测试放在 /test 目录中,mocha 将自动执行它们(假设它将从项目的根目录执行)

    【讨论】:

    • 非常感谢!所以没有办法阻止在原文件中添加exports...通过命令行进行测试吧?
    • 实现本身是隐藏的,所以你有封装。唯一暴露的部分是你的函数名和参数,它们可以被其他文件/模块使用。使用 TDD,您应确保为给定的输入函数提供所需的输出
    猜你喜欢
    • 2023-03-08
    • 1970-01-01
    • 2017-10-26
    • 2017-08-03
    • 1970-01-01
    • 2021-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多