Kaigi on Rails 2021 Day1 14:00-14:30 @YusukeIwaki 「Railsの システムテスト解剖学」の発表資料です
2021/06/18 銀座Rails#34の発表スライド(一部省略)
はじめに 先日、RSpec 3.7がリリースされました。 参考: RSpec 3.7 has been released! 上記ブログの中で「今回のリリースはRailsのSystem Testの統合機能をいち早く使ってもらうためのリリースだ」と書いてあります。 実際、ブログの中で触れられている新機能は「System Spec」機能の追加だけです。 というわけで、この記事はrspec-rails 3.7で導入されたSystem Specの紹介と使い方の説明をしていきます。 実行環境 この記事は以下のバージョンを対象にして書かれています。 rspec-rails 3.7.1 Rails 5.1.4 Ruby 2.4.2 selenium-webdriver 3.6.0 Capybara 2.15.4 Chrome 62 ChromeDriver 2.33 サンプルコード この記事で使用したコー
これまでVagrantやChefをつかってインフラのコード化を勉強してきましたが、今回はさらに一歩進めてServerspecを使ったインフラのテストと、『test-kitchen』を使ったTDDにチャレンしてみました! 慣れてくるとtest-kitchenのコマンドで設定をやり直し => インフラのテストがソースコードを書くような感覚で、インフラを構築できるのがすごく心地良かったです。 ようやくですが、localのvagrantと『AWS EC2』、『Digital Ocean』に対応しました。コマンドひとつでChefを適用したり、Serverspecでリモートの環境をテストできます! (05-02 08:35) Rubyサーバ・デプロイまでのチェックリストを追加 🐝 今回のソースコードVagrant/Digital Ocean/AWS EC2上にnginx/MySQL/rbenv/Ru
(※以下の記事はもう古く、Rails4.1時代に追従できていません。他の先輩諸氏の記事を参考にしてください) はじめに懺悔します 最強とかウソです。釣りです。すみませんすみませんすみません。 これくらい、みなさんやってますよね。でも、慣れてない人とかいると思いますし、なにがしかの参考になればと思って私の設定を晒します。 導入する項目 本記事で導入するテスト関連のGemは以下の通りです。フフフ、圧倒的じゃないか、我が軍は。 RSpec (BDD環境) Cucumber (受け入れテスト環境) Guard (ファイル変更を監視して、テストを自動化) Spring (テスト高速化。テスト以外にもrails gとかrails consoleとか色々高速化してくれる) Factory Girl (標準のフィクスチャに不満を感じる全ての方に) Database Cleaner (テストのたびにDBをキ
Rails4 で、JSON を受け取る API を作りました。 早速、テスト書くぞー!と意気込んだものの、はて。JSON ってどうやって投げればいいんだろう。 いろいろ検索して試してみたものの、うまくいくまで時間がかかったので、メモ。 うまくいったやり方 put :update, user: { name: 'HOGE', mofu: 333, moffu: { mofu: 12, bar: true, foo: 'HI' } }, foobar: true, barfoo: { mofu: 3 }, format: :json assert_equal( 'HOGE', User.first.name ) # params => {"user"=>{"name"=>"HOGE", "mofu"=>333, "moffu"=>{"mofu"=>12, "bar"=>true, "foo"=
RSpecへ移行した観点からの所見 狭い見識からちょっとした雑感をば。 コントローラのテストが書きやすくなった Railsの機能テスト(Functional Test)ではコントローラとビューのテストをいっしょくたに扱っていたが、RSpecでは別々になっている。 そのためコントローラのテストが書きやすい。 データベースからの値の取得やセッションの状態の確認、どのテンプレートをレンダリングしているか、httpのレスポンスの結果は何か、などコントローラの仕事だけにフォーカスしてテスト(「Example」と呼ぶべきなんだろうけどまだなじみがないので「テスト」で)が書けるので、ビューテンプレート側での変更などを気にする必要がなくなった。 デザイン変更で機能テスト失敗するようになりましたとか言う凹む状況から解放された。 ビューのテストはいらない子になった 同じようにビューのテストでもビューテンプレー
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く