Minitestでどのテストにどれくらい時間かかってるのか見たい
2017-10-24 | カテゴリ >> Rails

先日Railsチュートリアルをまたやっていました。たぶん3回目ですかね。
なんか、地味に毎回新しい発見あって、良いんですよね。

さて、Railsチュートリアルのテストはminitestですが
最近急にテストが遅くなりました。
というか、テストすげー終わるの遅い。

Cloud9の環境が悪いんじゃろう とか勝手に人のせいにしてたんですが
自分のMBPで実行させても、クソ遅い。
やばい、これは何かがおかしい。
と思い始めた。

けど、時間かかってるっぽいテストがどこなのか知りたい。
何かいいすべはないのだろうか?
各ファイル毎のテストの所要時間とかが分かればいいんだけども~ 

。。。 と思ってたら、今使ってるMinitestReportersに
multiple reporters??とかいう機能ありましたよ
https://github.com/kern/minitest-reporters

test_helperで呼び出してるところに

Minitest::Reporters.use! [Minitest::Reporters::SpecReporter.new, Minitest::Reporters::JUnitReporter.new]

と、オプションを与えてあげるだけでいいそうです。
らくちん

結果↓

どのテストに、どれくらいの時間かかってるか丸見え!
リアルタイムで表示されるので進捗が確認できます!

さて、どうもUserのSignupのテストの中にある一個のテストが60秒もかかってるそうですね。。

いや、もうね
この時点で、
とってもいやーな予感がしたんですよね。

心当たりが、、 
あるというか。。。。

一昨日、
ちょっとしたコードを追記して試してみたかったことが、
あるというか、、、、

たぶんControllerだろうな。。
と思ったんですよ

ばかやろうーーーー!!!

おわり

— 追記
余談ですが、なんか謎にreportsファイルなるものが大量生成されてました
さっきのコードが作ってくれたんでしょうか。。?
git ignoreに入れないと

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn
2017-10-24 | カテゴリ >> Rails 

関連記事

Comment





Comment



*