私はかなり経験豊富な開発者ですが、Web と Rails の初心者です。私は一種のマーケット プレイス レール アプリケーションを実装しようとしています。カスタマー インタラクション フローのかなり進んだところまでアプリを開発しましたが、ブラウザーを介した開発/テストが非常に多くの時間を消費する原因となるものを自動化する必要があることに気付きました。
ページ A からページ B、C、D...G に進むカスタマー インタラクション フローがあるとします。そして今、「H」ページを開発中です。自動テスト機能 (Minitest など) を使用してすべてを自動化できることはわかっています。しかし、私はまだ Rails 補助輪をつけているので、テストの自動化が実際に期待どおりに機能していると信じるよりも、データベースの状態が次の状態に進むのを自分で確認したいことがあります。
私の質問は、Minitest で A -> G からのユーザー インタラクション フローを自動化/シミュレートし、そこから手動で引き継いで、db を使用しているときに新しく開発したブラウザ ボタンをクリックできるようにする方法はありますか? db状態の進行状況を適切に監視するブラウザ?
そうでない場合 (これは私が推測していることですが)、統合テストの後にデータベースの内容を調べる方法に喜んで同意します。私の統合テストは問題なく動作します。それらが完了した後、dbブラウザを開いていろいろと調べて、db内のものが満足のいくものであることを確認するためにさまざまな値を確認できるようにしたいだけです。
私にとってうまくいくもう1つの解決策は、統合テスト内にdb値にアクセスできる何かがあった場合に、プログラムで検証できるようにすることです。assigns を使用すると、統合テスト内のインスタンス変数にアクセスして、「アサート」呼び出しを実行できるようにする方法のようなものを念頭に置いています。
もちろん、私が軌道から外れていて、私が見逃していたこの種の「ベスト プラクティス」がある場合はお知らせください。
Rails 4.2.0 と Ruby 2.2.2p95 を使用しています