[英]Run tests on sources and then on their minified version
我有JS項目:源代碼+測試。 目前測試是在原始資源上運行的,一切都很好。
但隨后消息來源縮小了,我想在他們的縮小版本上運行我所有的測試。 請注意,由於縮小,所有函數名稱都被重命名。 它是可解決的任務嗎? 理想情況下,測試/來源不會有太大變化。
我現在的配置是:TeamCity,karma.js + mocha,閉包編譯器(高級優化)。
我們的方法如下。 我們使用隨關閉一起提供的測試套件,我們按照正常情況編寫測試,然后使用goog.exportSymbol通過“反射”示例使用高級編譯進行測試:
product.path.SomethingRegressionTest.prototype.placeInvalidSession = function() {
...
}
goog.exportSymbol('test_placeInvalidSession', function() {
core.inject(product.path.SomethingRegressionTest).placeInvalidSession();
});
我們在這里使用注入,在拆解中我們銷毀所有注入的實例,但是你可以使用一些方法。
對於jQuery,我使用modules選項與源同時編譯測試。 它似乎運作良好。 只需確保您的測試以與高級優化兼容的方式編寫。
以下是測試的jQuery編譯選項: https : //github.com/ChadKillingsworth/jquery/blob/closure-compiler-1.9/build/closure-compiler/closure-compiler.flags
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.