今更はじめるCucumber
Tomohiro NISHIMURA
自己紹介西村 友裕 (Sixeight)大学院へ進学しましたシリコンバレーに行ってきました緊張しています
Cucumberはプレーンテキストで書かれた機能テストを実行するツールです
Cucumberはプレーンテキストで書かれた機能テストを実行するツールです
フィーチャ: 除算 バカな間違いを避けるために 有理数も計算できること シナリオ: ふつうの数値  前提 3 を入力  かつ 2 を入力  もし divide を押した  ならば 1.5 を表示
フィーチャ: 除算 バカな間違いを避けるために 有理数も計算できること シナリオ: ふつうの数値  前提 3 を入力  かつ 2 を入力  もし divide を押した  ならば 1.5 を表示
実演
どうやってるの?feature = プレーンテキストで書かれたテストコードstep = Rubyで書かれたスクリプト   features   ¦-- addition.feature   ¦-- division.feature   `-- ...
# -*- encoding: utf-8 -*-require spec/expectationsrequire cucumber/formatter/unicode$:.unshift(File.dirname(__FILE__) + /....
step     Before do       @calc = Calculator.new     end     After do     end                                            fe...
+ Webrat
Cucumber + Webrat
Cucumber + Webratアンカーテキストでリンクを辿れる➡ 新規エントリ をクリックするラベルで指定できる➡ タイトル に 今カナダにいます と入力する➡ 本文 に スタンフォードに行くぞ と入力するボタンを押せる➡ 作成 を押す
情報源http://wiki.github.com/aslakhellesoy/cucumber
まとめプレーンテキストなテストが実行できる裏方のStepが重要(使い回せる)Webratとの組み合わせが良い感じ外堀から埋めて行く(outside-in)
ごちそうさまでしたありがとうございました
おまけ
フィーチャ: 加算 バカな間違いを避けるために 数学オンチとして 2つの数の合計を知りたい シナリオテンプレート: 2つの数の加算について  前提 <値1> を入力  かつ <値2> を入力  もし <ボタン> を押した  ならば <結果> を...
フィーチャ: 加算 バカな間違いを避けるために 数学オンチとして 2つの数の合計を知りたい シナリオテンプレート: 2つの数の加算について  前提 <値1> を入力  かつ <値2> を入力  もし <ボタン> を押した  ならば <結果> を...
今更はじめるCucumber
Upcoming SlideShare
Loading in …5
×

今更はじめるCucumber

1,639 views
1,599 views

Published on

Published in: Technology, Self Improvement
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,639
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
6
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

今更はじめるCucumber

  1. 1. 今更はじめるCucumber
  2. 2. Tomohiro NISHIMURA
  3. 3. 自己紹介西村 友裕 (Sixeight)大学院へ進学しましたシリコンバレーに行ってきました緊張しています
  4. 4. Cucumberはプレーンテキストで書かれた機能テストを実行するツールです
  5. 5. Cucumberはプレーンテキストで書かれた機能テストを実行するツールです
  6. 6. フィーチャ: 除算 バカな間違いを避けるために 有理数も計算できること シナリオ: ふつうの数値 前提 3 を入力 かつ 2 を入力 もし divide を押した ならば 1.5 を表示
  7. 7. フィーチャ: 除算 バカな間違いを避けるために 有理数も計算できること シナリオ: ふつうの数値 前提 3 を入力 かつ 2 を入力 もし divide を押した ならば 1.5 を表示
  8. 8. 実演
  9. 9. どうやってるの?feature = プレーンテキストで書かれたテストコードstep = Rubyで書かれたスクリプト features ¦-- addition.feature ¦-- division.feature `-- step_definitons `-- calculator_steps.rb
  10. 10. # -*- encoding: utf-8 -*-require spec/expectationsrequire cucumber/formatter/unicode$:.unshift(File.dirname(__FILE__) + /../../lib)require calculatorBefore do @calc = Calculator.newendAfter doendGiven "$n を入力" do |n| @calc.push n.to_iendWhen /(w+) を押した/ do |op| @result = @calc.send opendThen /(.*) を表示/ do |result| @result.should == result.to_fend
  11. 11. step Before do @calc = Calculator.new end After do end feature Given "$n を入力" do |n| フィーチャ: 除算前 バカな間違いを避けるために @calc.push n.to_i提 end 有理数も計算できることも When /(w+) を押した/ do |op| シナリオ: ふつうの数値 @result = @calc.send opし end 前提 3 を入力 かつ 2 を入力な Then /(.*) を表示/ do |result| もし divide を押したら @result.should == result.to_f ならば 1.5 を表示ば end
  12. 12. + Webrat
  13. 13. Cucumber + Webrat
  14. 14. Cucumber + Webratアンカーテキストでリンクを辿れる➡ 新規エントリ をクリックするラベルで指定できる➡ タイトル に 今カナダにいます と入力する➡ 本文 に スタンフォードに行くぞ と入力するボタンを押せる➡ 作成 を押す
  15. 15. 情報源http://wiki.github.com/aslakhellesoy/cucumber
  16. 16. まとめプレーンテキストなテストが実行できる裏方のStepが重要(使い回せる)Webratとの組み合わせが良い感じ外堀から埋めて行く(outside-in)
  17. 17. ごちそうさまでしたありがとうございました
  18. 18. おまけ
  19. 19. フィーチャ: 加算 バカな間違いを避けるために 数学オンチとして 2つの数の合計を知りたい シナリオテンプレート: 2つの数の加算について 前提 <値1> を入力 かつ <値2> を入力 もし <ボタン> を押した ならば <結果> を表示 例: | 値1 | 値2 | ボタン | 結果 | | 20 | 30 | add | 50 | | 2 | 5 | add | 7 | | 0 | 40 | add | 40 |
  20. 20. フィーチャ: 加算 バカな間違いを避けるために 数学オンチとして 2つの数の合計を知りたい シナリオテンプレート: 2つの数の加算について 前提 <値1> を入力 かつ <値2> を入力 もし <ボタン> を押した ならば <結果> を表示 例: | 値1 | 値2 | ボタン | 結果 | | 20 | 30 | add | 50 | | 2 | 5 | add | 7 | | 0 | 40 | add | 40 |

×