【问题标题】:'newman' is not recognized as an internal or external command'newman' 未被识别为内部或外部命令
【发布时间】:2021-04-29 16:39:53
【问题描述】:

我已关注以下Medium 帖子,内容是如何在 Azure DevOps 或 TFS 中配置 postman / newman API 测试并发布 HTML 结果?

在我的管道中,我有一个安装 newman 的任务(使用命令 install newman -g 传递)和一个运行 api 测试的任务。(失败 - 错误:'newman' 未被识别为内部或外部命令。)

我试过了:herehere 可以找到一些解决方案。

在我的环境变量中,我有:

  1. npm\node_modules\newman\bin
  2. \npm\node_modules\newman
  3. %AppData%\npm

我确实使用npm install -g newman 安装了newman,如果我运行newman -v,我会得到5.2.2 的结果。

我的 Azure 任务运行 API 请求:newman run Auth.postman_collection.json -e UserAuthEnvironmentVariables.postman_environment.json --reporters cli,junit --reporter-junit-export Results\junitReport.xml

'C:\Users\AppData\Roaming\npm' 包含 3 个 newman 文件,C:\Users\RRQA.RRIOMQAS01\AppData\Roaming\npm\node_modules\newman 还包含文件和文件夹。

我的节点版本是v14.16.1,npm 版本是6.14.12

当我编辑环境变量时,我会重新启动服务器以确保更改生效。

还有什么其他建议我可以尝试解决这个问题吗?

【问题讨论】:

    标签: node.js azure npm postman newman


    【解决方案1】:

    当您从 azure 运行命令行并在本地登录系统时,它可能会在不同的用户身份下运行(一个在管理员中,另一个在您的帐户中),所以有时您在环境变量中安装或设置的内容会赢'在管理员身份登录中不可用。

    确保为所有用户完成安装。 (添加系统变量路径) else:

    将其作为本地模块安装在项目目录中:

    npm install newman newman-reporter-htmlextra
    

    并使用:

    "./node_modules/.bin/newman" run 
    

    【讨论】:

    • 使用 -g 安装模块时,newman.cmd 可以(本地)使用,但不能在我的构建过程中使用...本地安装时(省略 -g),不是 .cmd 文件已安装,但我没有意识到您可以只从 /.bin/{module} 文件夹中引用模块 - 这非常有用;谢谢 PDHide!
    猜你喜欢
    • 1970-01-01
    • 2018-12-25
    • 2014-04-29
    • 1970-01-01
    • 1970-01-01
    • 2021-07-28
    • 2013-10-06
    • 2013-10-11
    • 2013-01-25
    相关资源
    最近更新 更多