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.
今更はじめる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,836 views

Published on

Published in: Technology, Self Improvement
  • Be the first to comment

今更はじめる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 |

×