anchor testした結果をSolana Explorerで確認したい

やりたいこと

anchor testすると、テストファイルを実行している間だけvalidatorが動いているが、処理が終了するとvalidatorも終了するため、Solana Explorerで確認することができない。

solana-test-validatorで起動しておき、「% anchor test --skip-local-validator」を実行すると確認できるようになるが、基本は anchor test を使って、どうしてもデバッグしたい場合のみ、validatorを見るようにしたい。

前提

validatorを起動すると、test-ledgerフォルダが作成され、そこに情報が格納されるようになっている。

対応

Anchorもtest-ledgerフォルダが作成されるため、そのディレクトリに移動してから、solana-test-validatorを起動すればよい。

ファイル構成

.
├── .DS_Store
├── .anchor
│ ├── .DS_Store
│ ├── program-logs
│ └── test-ledger ← ここにトランザクションの情報が入っている
├── .env.dev
├── .git
├── .gitignore
├── .prettierignore
├── .vscode
│ └── tasks.json
├── Anchor.toml
├── Cargo.lock
├── Cargo.toml
├── app
│ ├── .DS_Store
│ └── tests
├── migrations
│ └── deploy.ts
・・・省略

やり方

まずトランザクションをためる。

% anchor test

そのあとにtest-ledgerが入っている場所の上位階層に移動してvalidatorを実行する。

% cd .anchor
% solana-test-validator

あとは、 Solana Explorerで閲覧 する。