我想使用 Karma 和 Jasmine 来测试我的 AngularJS 应用程序。我发现的安装 Karma 和 Jasmine 的所有文档都涉及使用 npm。我不能使用 npm 因为我受到限制,原因并不重要。到目前为止,我已经使用 zip 文件从 Github 上提取了 Jasmine 和 Karma。我想将 Karma 和 Jasmine 添加到我的项目中,但我不认为解压各自 GitHub 存储库的全部内容是可行的方法。
我想知道需要什么才能在我的 AngularJS 项目中使用 Karma 和 Jasmine,而不使用 npm。
最佳答案
我想这是可能的,但由于依赖关系,需要大量的工作。如果您查看 karma 的存储库,您可以找到一个文件 package.json
( here )。在此文件中,有一个属性 dependencies
( link ),其中列出了 Karma 所依赖的模块。因此,您必须找到它们的源代码,手动下载所有它们及其各自的版本号,并将其放入在 karma 模块文件夹中创建的名为 node_modules
的文件夹中。但是每个 karma 依赖的模块都在自己的 package.json
中列出了依赖项 - 您也必须下载它们,同时记住版本号并将它们放入模块的 node_modules
文件夹。而且这种依赖关系嵌套可能非常非常深。
某些模块在安装后可能会有额外的脚本要执行( scripts ),这些脚本在安装时默认由 NPM 调用。也许还有一些我不知道的事情。一般来说,它被设计为通过NPM安装,很少有人无权使用它。
我建议请有权访问NPM的人来安装所需的软件包并与您分享安装结果。所有内容都将安装在您运行 NPM 命令的目录的 node_modules
文件夹中,这很容易做到。
Here你可以下载我创建的版本,它有 karma v0.13.1、karma-jasmine v0.3.6 和 karma-chrome-launcher v0.2.0嗯>。我希望它对您有用,因为我们可能有不同的操作系统(我的是 Ubuntu 14.04 x64),我不确定 NPM 在安装任何软件包时是否会执行特定于操作系统的操作。
您应该将存档的内容放置到您的项目目录中,以使用终端命令从项目文件夹执行测试:
./node_modules/karma/bin/karma start
如果您想与它存储的模块密切合作,我仍然建议解决访问 NPM 的问题。
关于jasmine - 无需 npm 即可安装 Karma 和 Jasmine,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31456430/