我有一个应用程序的单元测试,我想测试的javascript依赖于其他JS框架(underscore.js,backbone.js,jQuery ......)。因此,在设置specRunner.html时,我也添加了这些文件:
....
<head>
<title>p13n.js Spec Runner</title>
<link rel="shortcut icon" type="image/png" href="./jasmine-standalone-1.3.1/lib/jasmine-1.3.1/jasmine_favicon.png">
<link rel="stylesheet" type="text/css" href="./jasmine-standalone-1.3.1/lib/jasmine-1.3.1/jasmine.css">
<script src="./jasmine-standalone-1.3.1/lib/jasmine-1.3.1/jasmine.js"></script>
<script src="./jasmine-standalone-1.3.1/lib/jasmine-1.3.1/jasmine-html.js"></script>
<!-- include source files here... -->
<script src=".../jquery.min.js" ></script>
<script src=".../underscore-min.js"></script>
<script src=".../backbone-min.js"></script>
<script src=".../MyApplication-file.js"></script>
<!-- include spec files here... -->
<script src=".../spec/MyApplication-spec.js"></script>
<script type="text/javascript">
(function() {
var jasmineEnv = jasmine.getEnv();
jasmineEnv.updateInterval = 1000;
var htmlReporter = new jasmine.HtmlReporter();
...
但是,这不适用于使用像Grunt这样的工具进行自动化测试。我不能依赖specRunner.html加载我的依赖项,因为没有使用.html。你如何管理依赖?
答案 0 :(得分:0)
根据您使用的IDE或编辑器,您可以像添加文件引用一样指定依赖项以获得代码完成。
E.g。例如,在Visual Studio中使用的格式为:
/// <reference path="~/lib/jasmine-2.0.0/jasmine.js" />
/// <reference path="~/lib/jasmine-2.0.0/jasmine-html.js" />
/// <reference path="~/lib/jasmine-2.0.0/console.js" />
/// <reference path="~/lib/jasmine-2.0.0/boot.js" />
/// <reference path="../../../../<ProjectName>/javascript/shared/jquery-1.7.2.min.js" />
/// <reference path="../../../../<PorjectName>/bundles/app.javascript.js" />
&lt; ProjectName&gt; 是您的项目名称,这只是因为测试项目是与主应用程序不同的项目