SoftwareFoundationGroupAtKyotoU / automata

Other
3 stars 10 forks source link

「テスト再実行」をすると通過率が正しく表示されない #241

Closed skymountain closed 9 years ago

skymountain commented 9 years ago

問題は admin_runtest.rb がテストが終わってからレスポンスを返すようになっていないからで,そもそも script/test で cm[:test] をバックグラウンドプロセスとして走らせているからです. 恐らくテストが停止しないことを心配していると思われますが,タイムアウトなりを設ければ解決しそうな気がします.

westpaddy commented 9 years ago

適切なタイムアウト時間を決めるのが難しいと思うんですよね。 テスト結果として「テスト実行中」みたいに表示するか、テスト結果とれるまで一定間隔でリクエスト投げ続ける(以前のrecordでやってた方式)とかですかね。

skymountain commented 9 years ago

タイムアウトはレポートごとに決めてもらえばいいんじゃないでしょうか.例えば授業の課題で言えば数十秒以上かかるのはそれだけでおかしいわけですし.

skymountain commented 9 years ago

テスト実行中はありですね.

skymountain commented 9 years ago

こちらにも転載しておきます.(from Pull #316)

より深刻なetail は「前のテスト結果が表示される」ことが挙げられます.現在の実装だと「何故かテスト通過率は表示されないけど,detail を見るとテスト結果は前と変わらなかったらしい」と誤解する恐れがあります.
westpaddy commented 9 years ago

これ再実行とか関係なく、result_viewの実装が足りてないのが原因ですね。 テストが失敗した場合にもたぶん同じ現象が起こると思います。

westpaddy commented 9 years ago

↑tester.cgiのレスポンスが返ってきてログがちゃんと更新された後でも、という話です。

westpaddy commented 9 years ago

前のテスト結果が表示されるのは、ログを追加せずに最新のログを徐々に上書きしていっているせいですね。 buildが終わった時点では、buildに関係する部分しか上書きされていなくて、testの部分に以前のログが残ってます。

westpaddy commented 9 years ago

↑上書き云々の話は再実行をした時の話です

skymountain commented 9 years ago

とりあえず Pull #318 を(コメントしたことを解決した上で)マージした後,テストの現在状況をもっと正確に伝えるように変更したいと思います.