https://github.com/Songmu/gotesplit gotesplitというかなり便利なツールを書いた。Goのテストをいい感じのサブセットに分割して、それを実行するものです。このアプローチで、社内のテストを15分から3分くらいまでに短縮しました。 これを使えばCI環境での高速なテストの並列実行を簡単に実現できます。 実例 CircleCIやGitHub Actions上で簡単に導入できます。 CircleCIの場合 parallelism: 5 docker: - image: golang:1.15.3 steps: - checkout - run: command: | curl -sfL raw.githubusercontent.com/Songmu/gotesplit/main/install.sh | sh -s bin/gotesplit ./... -
![GoのテストをCIで簡単に並列実行する | おそらくはそれさえも平凡な日々](https://cdn-ak-scissors.b.st-hatena.com/image/square/44fc27d71b62444cac921d824d82f54b46f499e2/height=288;version=1;width=512/https%3A%2F%2Fsongmu.jp%2Friji%2Fstatic%2Fimg%2Fsongmu-ogp.jpg)