Help us understand the problem. What is going on with this article?

turnip_supportを使ってみよう

More than 3 years have passed since last update.

インストール方法

Gemfileのgroup :testに下記の行を追加する

gem "turnip_support", git: "https://github.com/ThuBM/turnip_support"

その後、下記のコマンドを実行して

bundle install

環境を初期化

cd [プロジェクトフォルダ]
bundle exec rake turnip_support init

上記のコマンドを実行して、下記のファイルは自動的に作成される
- .rspec
- spec/spec_helper.rb
- spec/turnip_helper.rb

テストパターン作成

3部分がないといけない。3部分は空の行で分離されないといけない

  • feature_data: 基本のテスト情報を含む。(1行目 ~ 3行目)

    • 1行目: 機能
    • 2行目: タスクリンク
    • 3行目: ステータス
  • initial_data: 初期化のデータを含む。 (6行目から )

    • カラム B : モデル名
    • カラム D : オブジェクト ID
    • カラム E から: オブジェクト属性の値

例:

  • procedures_data: テストアクションと期待結果を含む。
    • 手順は空の行で分離される
    • 各手順の構造:
    • テスト手順と期待結果は空の行で分流される
    • アクションの部分:
      • カラム A : 手順のID
      • カラム B : シナリオ名
      • カラム C : ブランチID
      • カラム D : アクション
      • カラム E から : アクションに該当のパラム
    • 期待結果の部分:
      • カラム C : ブランチID
      • カラム D : 期待メソッド
      • カラム E から : 期待メソッドに該当のパラム
      • カラム I : 結果 (OK, NG)
      • カラム J : エーラがイメージパス

例:

上記のイメージに書いてある手順は下記みたいの意味がある

Scenario List all users (result ok)
  When visit to /users   
  Then have content admin_test_name
  And have content normal_name
  When visit to /users/new
  Then have selector input#user_name
  And ...
  ...

Configuration ファイル

上記の2ファイルはspec/configsフォルダに置いてください。

featureファイルを自動的に作成

下記のコマンドを実行する

bundle exec rake turnip_support [feature_name] [yml_config_file]

スプレッドシートが編集されるたびに上記のコマンドの実行は必要があります。

テスト

rspec spec/features/[feature_name].feature

参考

https://github.com/ThuBM/turnip_support/wiki

temona
"てもなく"とは「簡単に、たやすく」という意味を持った古語です。 テモナの社名にはIT技術で世の中を便利にしたいという想いが込められています。
http://temona.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away