-
Notifications
You must be signed in to change notification settings - Fork 346
Open
Description
内容
現状、Github Actionsでのe2eテストに用いているNemoエンジンは、容量は軽いけれども歌手がいません。
そのためいくつかの処理がエラーになってしまい、ワークアラウンドを書く必要が出てきてしまっています。
https://github.com/VOICEVOX/voicevox/pull/1927/files#diff-898edad7a5546f82721279f8b7c308b324c2106aa8c4e642415e4bc3a9f886acR93-R99
歌手に対応しているエンジンに変更するか、モックエンジンで代用するか、あるいはモックAPIを作るかすれば解決できかも?
Pros 良くなる点
e2eテストで書ける幅が広がる
実現方法
- 歌手に対応しているエンジンに変更する
- 普通のボイボエンジンを使えばOK
- でも 1GB ぐらいあってかなり重いのでなるべく避けたいところ、どうしても必要ならこれ
- モックエンジンで代用する
- VOICEVOX ENGINEにはモックで起動する機能があり、それはちゃんと歌手にも対応してるのでそれを代用する
- git cloneして
python run.py --enable_mockすれば良い - ただ Python セットアップ が意外と 時間がかかってしまい、キャッシュをうまく書かないとテスト時間が伸びるかも
- 実は1回テストを高速化しようとしてやってみて途中で諦めたのですが、頑張れば早くなりそうかも
- その時の実装これです テスト時にmock版エンジンを動かしてみる Hiroshiba/voicevox#1
- モックAPI を用意する
- 高度ですが、外部とのネットワーク通信はモック化することができます
- @sevenc-nanashi さんがスクリーンショットテストを作ってくださった時のコードがとても参考になると思います
その他
早めに解決しておかないと結構困りそうなタスクなので、手が空いてる方がいらっしゃったらちょっと取り組んでくださると助かります 🙇