哇,真是一团糟。这是一个场景。
>
AMD功能的RequireJS,初始化如下:
<script data-main="js/main" src="js/require.js" type="text/javascript"></script>
然后在main.js中添加以下配置代码:
require.config(
{
paths:
{
... : ...
}
});
每个骨干视图/模型/路由器都是一个“定义(...)”模块,并且“需要(“theOneRout”,...)”在main.js.
r.js用作 Uglify/Closure 的优化器。一个“编译的”主.js是在./release子文件夹中创建的,我在.net框架中动态选择该子文件夹。
花了很长时间才得到骨干要求。JS开始工作,但现在工作很好!
然后在上面涂上茉莉花也需要一些定制工作,但效果很好。我必须加载要求。js来自我的SpecRunner。html,使用require的define(…)调用将每个测试模块定义为AMD,然后我实例化
require(
[
//"test/specs/testSpec1",
"test/specs/views"
],
function ()
{
jasmine.getEnv().updateInterval = 1000;
var reporter = new jasmine.TrivialReporter();
jasmine.getEnv().addReporter(reporter);
....
....
});
这也很管用测试加载
现在,我希望像JSTestDriver这样的框架充当我的运行程序。我选择JSTD是因为它简单、能够在远程浏览器上测试、支持代码覆盖率,但我仍然愿意接受其他建议。
JSTestDriver本身工作良好,我唯一的问题是运行JSTD Jasmine ReuireJS组合在一起。最大的问题是,如果我在配置文件中告诉JSTD一个Jasmine/Require测试模块以便加载它,我会得到下面的错误:
http://requirejs.org/docs/errors.html#mismatch
如果我使用r.js将我的所有代码优化到一个main.js,这个组合是有效的,包括覆盖率,但是覆盖率收集在一个巨大的文件上,很难分析。更不用说检测一个50k行的代码js文件并通过JSTD运行它需要很长时间。
我尝试创建一个类似fixture的js文件来加载我所有的Jasmine测试模块
有人把这个特定的组合发挥作用了吗?也许我要求太多了...
您是否尝试过在测试中使用require而不是define来命名测试中的模块?
https://github.com/podefr/jasmine-reqjs-jstd
编辑:
我刚刚发布了一个开源工具包,希望它能像帮助我一样帮助他人。它是许多开源工具的组合,为您提供了一个开箱即用的requirejs主干应用程序。
它提供了单个命令来运行:dev web server、jasmine单浏览器测试运行程序、jasmine js-test-driver多浏览器测试运行程序,以及JavaScript和CSS的级联/缩小。它还输出应用程序的非统一版本用于生产调试,预编译你的车把模板,并支持国际化。不需要设置。它只是工作。
它还支持正在测试的未命名模块。
http://github.com/davidjnelson/agilejs
我无法让它工作,最终使用PhantomJS来运行我的茉莉花测试。http://phantomjs.org/
解决方案完全符合 devadvocate 的提法。因为 JsTestDriver 和 Require.js 正在竞相成为管理文件/依赖项加载的人,所以当你尝试以 100% Require.js 的方式(使用匿名模块和定义)来执行它时,JsTestDriver 会提供一个合适的选择。相反,您必须命名模块并使用 require([...], function(...){...而不是 define([...].我写了一篇文章,展示了如何将QUnit,Requirejs和代码覆盖率与JSTD集成:js-test-driver qunit覆盖率 requirejs。我在示例中使用了 QUnit,但您可以轻松地用 QUnit 代替 Jasmine。在试图解决这个问题时,我考虑过只使用PhantomJS,但对于我们的用户群来说,我们必须进行跨浏览器测试,IE7,IE8,IE9等,因此单个WebKit不会削减它。JsTestDriver非常有用,但我担心糟糕的文档会让开发人员离开。很快,我会在 GitHub 上获取我示例的代码。希望这有帮助。
问题内容: 我创建了一个自定义样式表,该样式表将覆盖Wordpress模板的原始CSS。但是,在我的日历页面上,原始CSS具有声明的每个表格单元格的高度: 有什么办法可以覆盖这个吗? 问题答案: 覆盖!important修饰符 只需使用添加另一个CSS规则,并赋予选择器更高的特异性(向选择器添加其他标签,id或类) 在比现有选择器晚的位置添加具有相同选择器的CSS规则(平局中,最后一个定义的获胜者
问题内容: 好的,我从很多地方和来源都听说过,每当我覆盖equals()方法时,我也需要覆盖hashCode()方法。但是请考虑以下代码 这里的输出为true,完全按照我想要的方式为false,我根本不关心重写hashCode()方法。这意味着hashCode()覆盖是一种选择,而不是每个人都说的强制性选择。 我想要第二次确认。 问题答案: 它对您有用,因为您的代码未使用任何需要API的功能(Ha
我是一名Java新手,在可比接口中重写compareTo方法时遇到了一些问题。我的代码创建了一个HashMap,将字符串与int关联起来。我希望重写compareTo,以便ArrayList键中的字符串根据其HashMap值排序,而不是按字母顺序排序。然而,在这种实现下,字符串仍然按字母顺序排序。 哦,澄清一下,nameWeight是字符串和整数对的哈希映射。 有什么想法吗?
问题内容: 我们很少有扩展基本类的类。我们注意到我们使用了“退出一些睡眠”方法,并且希望在发生睡眠时进行记录。有没有一种方法可以覆盖Thread.sleep方法,在其中我可以添加一些自定义逻辑(即记录),然后仅调用实际的Thread.sleep()?这样,我就不必更改在我的基类中使用Thread.sleep的所有位置。我也愿意接受其他选择。 问题答案: 您不能重写方法,因为它是本机方法,所以无法对
我正在开发一个Spring集成/引导应用程序。我正在使用一个多文档(src/main/Resources/application.yml)来设置几个配置类的默认值(用@ConfigurationProperties注释)。pplicaiton.yml带有默认值,其中一些需要被覆盖,具体取决于环境。 我可以在目录中使用Java系统属性(-D...=...)、Spring“属性”(--...=...)
问题内容: 我试图在php中覆盖我的位置,但是我仍然在php.ini文件中获得了2 mb的值。 问题答案: 通过进行设置时,这些设置不会有任何效果。 原因是PHP 在 执行脚本 之前 需要这些值。上载时,将在完成上载后执行目标脚本,因此PHP需要事先知道最大大小。 在,虚拟主机配置或文件中进行设置。一个典型的文件如下所示: