npmjs、bower などのいくつかのコンポーネント マネージャー システムにモジュールを公開したいです。さらに、ダウンロード可能なビルドも作成したいと考えています。たとえば、requirejs 用の AMD スタイル、commonJS スタイルの 1 つ、ブラウザー、それぞれの縮小など... これらは 10 以上のビルドです。
私は現在、単一の AMD ビルドを持っており、カルマ、ジャスミン、requirejs を amd スタイルで使用して単体テストを作成しました。他のビルドとそれらのテストを生成する方法を教えてください。
つまり、変換のベースとして何を持っているべきかを決めることができないということです。どの出力パッケージにも共通部分があり、パッケージ依存部分もあります。
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);
よくわかりませんが、すべてのテストの前に共通コードを開発してビルドする必要がありますか、それともパッケージの 1 つを開発してテストし、それから他のビルドへの変換を記述する必要がありますか?
ビルドを作成するために gulp を使用し、それらを自動的に公開する前に、それぞれのユニット テストを自動的に呼び出すつもりです。ああ、また、バージョン番号の自動変更も必要です。ところで。ビルド手順の後に単体テストを呼び出す必要がありますか?どう思いますか? バグのあるコードが公開されていないことを確認したいだけです...