インストール
dotnet add package Gua.Core --version 0.12.0
dotnet add package Gua.Testing --version 0.12.0
dotnet add package Gua.Testing.Godot --version 0.12.0バージョン固定を外せばNuGet上の最新安定版が選ばれる。3パッケージは同じバージョン系列へ揃える。
Gua.Core
ネイティブC ABIを.NETから扱う最低層。UI Treeと要求・イベントの契約を提供する。
| 型 | 役割 |
|---|---|
IGuaContext | ローカル/リモートContextに共通する操作境界。 |
GuaContext | ネイティブGua Contextを所有し、node、snapshot、request、eventを操作。 |
GuaSelector | id、role、text、状態、scopeを表す選択条件。 |
GuaNodeState | visible、enabled、value、focused、checked等の観測状態。 |
GuaAction / GuaEvent | 外部要求とホストが観測した結果・イベント。 |
GuaReset | session epochと要求・イベント・履歴の初期化契約。 |
Gua.Testing
Coreの上へ、テストで読むための高水準APIを追加する。
| 型 | 役割 |
|---|---|
GuaAssertions | GetById、GetByRole、WaitFor...等の入口。 |
GuaLocatorQuery | ByRole、ByText、Within、WhereVisible等を連結するselector builder。 |
GuaNodeSnapshot | 成功した特定frame/revision時点のノード証拠。 |
GuaTestSession | テスト前後のresetとstrict leak検出を管理。 |
GuaAssertionScope | NUnit等の失敗処理と診断オプションをスコープへ適用。 |
GuaDiagnostics | 失敗時のUI Tree、ログ、履歴、環境情報を成果物として保存。 |
Gua.Testing.Godot
Godotプロセスを起動し、ゲーム内WebSocketブリッジへ接続するホスト層。
| 型 | 役割 |
|---|---|
GodotSceneTestHost | シーンの起動、接続、終了、stdout/stderr、スクリーンショットを管理。 |
GodotSceneTestHostOptions | Godot実行ファイル、project path、headless、port、環境変数、reset policyを指定。 |
GuaRemoteContext | WebSocket越しに最新snapshotを取得し、actionを送るIGuaContext実装。 |
GuaRemoteUiTree | リモートJSON snapshotを.NETのノード表現へ変換。 |
GuaScreenshot | 公開済みPNGの保存結果、絶対パス、寸法等を表す。 |