Version: 2023.1
言語: 日本語
パッケージの命名
パッケージにテストを追加する

パッケージレイアウト

カスタムパッケージに推奨するパッケージレイアウトです。

<package-root>
  ├── package.json
  ├── README.md
  ├── CHANGELOG.md
  ├── LICENSE.md
  ├── Third Party Notices.md
  ├── Editor
  │   ├── <company-name>.<package-name>.Editor.asmdef
  │   └── EditorExample.cs
  ├── Runtime
  │   ├── <company-name>.<package-name>.asmdef
  │   └── RuntimeExample.cs
  ├── Tests
  │   ├── Editor
  │   │   ├── <company-name>.<package-name>.Editor.Tests.asmdef
  │   │   └── EditorExampleTest.cs
  │   └── Runtime
  │        ├── <company-name>.<package-name>.Tests.asmdef
  │        └── RuntimeExampleTest.cs
  ├── Samples~
  │        ├── SampleFolder1
  │        ├── SampleFolder2
  │        └── ...
  └── Documentation~
       └── <package-name>.md

多くの公式 Unity パッケージでこの構成が採用されています。

場所 説明 
package.json パッケージマニフェスト。パッケージの依存関係とその他のメタデータを定義します。
README.md 開発者パッケージドキュメント。これは一般に、 開発者がパッケージを変更したり、新しい変更をパッケージのメインブランチにプッシュするのを支援するドキュメントです。
CHANGELOG.md 逆時系列でのパッケージの変更の説明。変更履歴を記録する のような標準的な形式を使用することが推奨されます。
LICENSE.md パッケージライセンステキスト が含まれます。通常、Package Manager は選択した SPDX リストのウェブサイト からテキストをコピーします。
Third Party Notices.md 法的要件を満たす ために必要な情報が含まれています。
Editor/ エディターのプラットフォーム固有のアセットフォルダー。Assets 下の Editor フォルダーとは異なり、これは規則にすぎず、アセットのインポートパイプラインには影響しません。エディター固有のアセンブリをこのフォルダーに正しく設定するには、アセンブリの定義とパッケージ を参照してください。 
Runtime/ ランタイムのプラットフォーム固有のアセットフォルダー。これは規則にすぎず、アセットのインポートパイプラインには影響しません。ランタイムアセンブリをこのフォルダーに正しく設定するには、アセンブリの定義とパッケージ を参照してください。
Tests/ パッケージに含まれるテスト を保存するフォルダー。
Tests/Editor/ エディタープラットフォーム固有のテストフォルダー。このフォルダーでエディター固有のテストアセンブリを適切に設定するには、アセンブリの定義とパッケージ を参照してください。
Tests/Runtime/ ランタイムのプラットフォーム固有のテスト。このフォルダーでランタイムテストアセンブリを適切に設定するには、アセンブリの定義とパッケージ を参照してください。
Samples~/ パッケージに同梱されているサンプル を保存するフォルダー
Documentation~ パッケージに同梱されているドキュメント を保存するフォルダー。

Unity は ~ の文字で終わるフォルダー名のコンテンツを無視し、.meta ファイルで追跡しません。ただし、EditorRuntimeTests フォルダーとそのコンテンツが正しく動作するためには、.meta ファイルを含む必要があります。.meta ファイルと、Unity がそれをトラッキングに使用する方法についての詳細は、アセットワークフロー を参照してください。

パッケージの命名
パッケージにテストを追加する