我想發佈一個模塊到幾個組件管理器系統:npmjs,bower等...另外我還想創建可下載的版本,例如AMD中的requirejs風格,一個commonJS風格,一個全局風格在瀏覽器中的命名空間,爲他們每個人縮小等等......這些都是超過10個版本。如何測試同一模塊的多個版本?
我目前有一個AMD版本,我用amd風格的karma,jasmine和requirejs爲它寫了單元測試。你有什麼建議,如何爲他們生成其他版本和測試?
我的意思是我不能決定我應該有什麼作爲轉化的基礎。每個輸出包中都有一個共同部分,並且還有一個與包相關的部分。
AMD - requirejs(我不知道如何使用配置選項)
define(["module", "dependency"], function (module, dependency) {
var m = {
config: function (options){
//...
},
//...
//do something with the dependency
};
m.config(module.config()); //load config options set by require.config()
return m;
});
CommonJS的
var dependency = require("dependency");
module.exports = {
config: function (options){
//...
},
//...
//do something with the dependency
};
全球
var m = (function(){
return {
config: function (options){
//...
},
//...
//do something with the dependency
};
})(dependency);
我不知道,我應該發展常見的代碼和每次測試之前的構建,還是我應該開發一個包,測試它並編寫一個轉換從那到另一個版本?
我打算在自動發佈它們之前,使用gulp爲它們中的每一個自動創建構建和調用單元測試。哦,我還需要一個自動版本號更改。順便說一句。是否有必要在構建過程之後調用單元測試,你覺得怎麼樣?我只是想確定,這不是一個bug的代碼被髮布...