🦜
GoでWASM用実装のテスト
WASMでテスト
GOOS=js GOARCH=wasm の場合のテストってどうすればいいんだろうかというのを調査してみた。
その結果、wasmbrowsertest
っていうのが見つかりました。
準備
-
Chromeのインストールをあらかじめ実施しておきましょう
-
wasmbrowsertestのインストール
go get github.com/agnivade/wasmbrowsertest i=$(which wasmbrowsertest) ln -s $i $(dirname $i)/go_js_wasm_exec
使い方
go env -w GOOS=js GOARCH=wasm
go test .
VSCodeの場合
ワークスペースの設定に以下の設定を入れます。
{
"go.toolsEnvVars": {
"GOARCH":"wasm",
"GOOS":"js",
},
"go.testEnvVars": {
"GOARCH":"wasm",
"GOOS":"js",
}
}
VSCodeのコマンドパレットから「Reload Window」をすればテストの実行と結果表示をVSCodeの出力ペインで確認できます。
まとめ
- 使い勝手が
go test
と何ら変わらずで便利 - ChromeDP(ヘッドレスChromeドライバー)を裏で使う
- go_js_wasm_execという命名の解説は
go help run
に書いてる
Discussion