Minitest【ruby】

Minitest
  rubyのテスト(minitest)の学習です。

 rubyのテストでは、他にRSpec, test-unitなどが有名なテストフレームワークです。


Minitest特徴
# rubyをインストールすると一緒に入る為、特別なセットアップが必要ない
# Railsのデフォルトのテスティングフレームワークなので、活かしやすい


今回は、有名なfizz buzzを例にします。

fizz_buzz.rb

def fizz_buzz(number)
 if number % 3 == 0 && number % 5 == 0
       # 3で割り切れ 且つ 5で割り切れるならfizz buzzを出力
   p "fizz buzz"
 elsif number % 3 == 0
       # 3のみで割り切れる場合、fizzを出力
   p "fizz"
 elsif number % 5 == 0
       #  5のみで割り切れる場合、buzzを出力
   p "buzz"
 else
       # 上記の条件に該当しない場合、数字を出力
   p number.to_s
 end
end


fizz_buzz_test.rb

require 'minitest/autorun'
    # minitest を呼び出す
require './fizz_buzz.rb'
    # fizz_buzz.rbを呼び出す

class FizzBuzzTest < Minitest::Test
 def test_fizz_buzz
   assert_equal '1', fizz_buzz(1)
   assert_equal 'buzz', fizz_buzz(5)
   assert_equal 'fizz', fizz_buzz(3)
   assert_equal 'fizz buzz', fizz_buzz(15)
 end
end
assert_equal
   assert_equal ’期待値’, ’検証式’


terminal

❯ ruby fizz_buzz_test.rb
Run options: --seed 27015

# Running:

"1"
"buzz"
"fizz"
"fizz buzz"
.

Finished in 0.000814s, 1228.5012 runs/s, 4914.0049 assertions/s.
1 runs, 4 assertions, 0 failures, 0 errors, 0 skips
    # run : 実行したテストメソッドの件数
    # assertions : 実行した検証メソッド件数


勉強になったこと

# RSpecは使用したことがあったが、Minitestは初めて使用した。



いいなと思ったら応援しよう!