我想用Karma和Jasmine来测试我的AngularJS应用程序。我发现安装Karma和Jasmine的所有文档都涉及使用npm。我不能使用npm,因为我受限制,原因并不重要。到目前为止,我已经使用zip文件从Github中删除了Jasmine和Karma。我想将Karma和Jasmine添加到我的项目中,但我不认为解压缩相应GitHub存储库的全部内容是可行的方法。
我想知道在不使用npm的情况下,我需要在我的AngularJS项目中使用Karma和Jasmine。
答案 0 :(得分:2)
我想这是可能的,但由于依赖性,将需要花费很多工作量。如果您查看 karma 的存储库,则可以找到文件package.json
(here)。在此文件中有一个属性dependencies
(link),其中列出了 karma 依赖的模块。因此,您必须找到他们的来源,手动下载所有这些来源的相应版本号,并放入在 karma 模块文件夹中创建的名为node_modules
的文件夹中。但是这些模块 karma 中的每一个依赖于它们自己的package.json
中列出的依赖关系 - 您也必须下载它们,同时记住版本号并将它们放入模块中#39 ; s 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 是否在安装任何软件包时执行特定操作系统。< / p>
您应该将存档的内容放在项目目录中,使用终端命令从项目文件夹执行测试:
./node_modules/karma/bin/karma start
如果你想密切使用它存储的模块,我仍然建议解决访问 NPM 的问题。