4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

turnip_supportを使ってみよう

Last updated at Posted at 2016-10-24

インストール方法

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

参考

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?