创建 package.json 时的测试命令是啥?

Posted

技术标签:

【中文标题】创建 package.json 时的测试命令是啥?【英文标题】:What is the test command while creating package.json?创建 package.json 时的测试命令是什么? 【发布时间】:2017-12-06 08:56:32 【问题描述】:

在使用npm init 从命令行创建package.json 以在Node.js 中创建模块时,有一个我不知道的测试命令 字段。在 CLI 中执行 npm help json 时,文档中也没有提及它。

请解释它是关于什么的。

【问题讨论】:

简而言之,如果您有一个流行的工具来运行测试,那么 test 命令很可能只是该工具的名称......即jest 【参考方案1】:

test command 是在您调用 npm test 时运行的命令。

在与持续集成/持续部署工具(例如jenkinscodeshipteamcity)集成时,这一点很重要。

示例: - 假设您将项目部署到 AWS 或其他云托管服务提供商, - 您可以将基础架构设置为自动运行npm test。 - 如果这些测试中有问题,您的 ci/cd 将在部署前自动回滚。

执行测试 您可以使用 karmajestselenium/nightmare/phantomjs 或任何其他允许您编写和执行的测试脚本库/框架测试,然后在 scripts.test 中设置所需的命令,最后从 npm test 运行它。

【讨论】:

这里的函数到底是什么意思? *将措辞从function 更改为command 基本上认为,说你想运行mocha test.js - 每次你想运行mocha 时都没有必要输入它 你能做什么,它添加 npm precommits/postcommits 来运行npm test 以确保你的测试通过 好的,知道了!谢谢! 还有一个问题!这些是由什么制成的?我的意思是如果我的应用程序使用多个模块怎么办?我是否为每个模块编写测试以检查其各自的代码?它是如何工作的?【参考方案2】:

假设你的意思是scripts.test:

"scripts" : 
  "test" : "echo \"Error: no test specified\" && exit 1"

此字段包含调用npm test 时应运行的程序(/命令行)。通常,该程序是一个测试运行程序,例如 mochaavajest、...

默认值是打印错误消息的占位符(尝试在与package.json 相同的目录中运行npm test)。

【讨论】:

以上是关于创建 package.json 时的测试命令是啥?的主要内容,如果未能解决你的问题,请参考以下文章

package.json 里的 devDependencies 是啥意思

package.json 依赖项中的“下一个”到底是啥意思?

这些在 package.json 中使用下划线前缀的属性是啥?

package.json中的“private”:true或“private”:false是啥意思[重复]

package.json中的script选项作用

在您的 package.json 中为反应组件添加依赖项以做出反应的正确方法是啥