Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

ライトニングトーク資料 OSC東京2017秋

1,802 views

Published on

RSpecの簡単な説明と、シラサギでの実際の運用例を紹介します。

Published in: Software
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

ライトニングトーク資料 OSC東京2017秋

  1. 1. 1 Rubyのための ビヘイビア駆動開発ツール RSpec シラサギでのRSpec運用例
  2. 2. 2 自己紹介
  3. 3. 名前:谷本 真治 所属:株式会社ウェブチップス 開発担当 3
  4. 4. 2017年4月に 新入社員として入社しました 4
  5. 5. Rubyは難しいが、楽しい 5
  6. 6. 徳島でOSS「シラサギ」の 開発をおこなっています 6
  7. 7. 7
  8. 8. Webアプリケーション 開発プラットフォーム 8
  9. 9. MITライセンスのOSS 9
  10. 10. 10 RSpecとは
  11. 11. ビヘイビアを記述するための ドメイン特化言語を 提供するフレームワーク 11
  12. 12. Rubyプログラマーのための ビヘイビア駆動開発ツール 12
  13. 13. 13 specフォルダー
  14. 14. ディレクトリ 説明 factories ファクトリー features 統合テストスペック fixtures 非データベースのデータ helpers ヘルパースペック jobs ジョブスペック lib ライブラリスペック mailers メーラースペック models モデルスペック requests リクエストスペック support ヘルパーメソッド validators バリデータスペック 14
  15. 15. 15 factories
  16. 16. テストデータを作成する ファクトリーのフォルダー 16
  17. 17. factory :cms_user, traits:[:cms_user_rand_name, :cms_user_uid, :cms_user_email] def cms_user cms_user = Cms::User.where(email: build(:cms_user).email).first cms_user ||= create(:cms_user, group: cms_group, role: cms_role) cms_user.in_password ||= "pass" cms_user end 17
  18. 18. CMSには サイトのデータが必要 18
  19. 19. ファクトリーでテスト用の データが作成できる 19
  20. 20. 20 fixtures
  21. 21. 非データベースのデータの フォルダー 21
  22. 22. 画像やCSVを用意 22
  23. 23. attach_file "item[in_file]", "#{Rails.root}/spec/fixtures/cms/user/cms_users_1.csv" 23
  24. 24. 画像を使用したテストが できる 24
  25. 25. csvを使用したインポート、 エクスポートがテストできる 25
  26. 26. 26 support
  27. 27. RSpecで使用する ヘルパーメソッドの フォルダー 27
  28. 28. def login_cms_user login_user cms_user end def login_user(user) visit sns_login_path within "form" do fill_in "item[email]", with: user.email fill_in "item[password]", with: "pass" click_button "ログイン" end end 28
  29. 29. サイトのテストデータを 何度も入力するのは大変 29
  30. 30. ヘルパーメソッドで 簡単に記述できる 30
  31. 31. 31 :dbscope
  32. 32. データベースを初期化する ヘルパーメソッドの 実行タイミングを設定 32
  33. 33. describe "article_pages", dbscope: :example, js: true do 33
  34. 34. オプション 説明 example テストを実行する毎にデータベースを 初期化します。 context spec ファイル毎にデータベースを初期化します。 context が規定値です。 34
  35. 35. データベースの初期化の タイミングが変更できる 35
  36. 36. 36 ご清聴 ありがとうございました。

×