Ruby Minitest 테스트

4129 단어 Ruby

의 목적


Rails의 기본 테스트 프레임을 내보냅니다.

테스트 코드의 모형


Minitest를 사용한 테스트 코드의 초기 형태는 다음과 같습니다.
sample_test.rb
require 'minitest/autorun'

class SampleTest < Minitest::Test
  def test_sample
    assert_equal 5, 'こんにちは'.length
  end
end
· 첫 번째 줄에서 Minitest에 필요한 라이브러리를 호출합니다.
• SampleTest반에 Minitest:Test반을 계승하도록 합니다.
• SampleTest 클래스에서 실행 대상으로 정의하는 테스트 방법(test sample)
이런 절차에 따라 제작할 수 있다.
assert_equal은 검증 방법으로 첫 번째 파라미터에 예상치를 입력하고 두 번째 파라미터에 검증 값을 입력한다.
그래서testsample 방법은 '안녕' 이라는 문자열의 문자 수가 '다섯 글자' 인지 테스트하고 있습니다.
결과가 같기 때문에 시험에 통과했다.

・runs: 수행된 테스트 방법의 개수 (test sample 1건만 해당)
・assertions: 실행된 검증 방법의 개수(assert equal 1회 사용)
・failures: 검증에 실패한 테스트 방법의 개수
・erross: 검증 과정에서 오류가 발생한 테스트 방법의 개수
・skipps: skip 방법으로 실행된 테스트 방법의 개수 건너뛰기
을 입력합니다.

샘플 검증 방법


http://docs.seattlerb.org/minitest/Minitest/Assertions.html
Minitest의 API 문서를 참조하여 몇 가지 검증 방법을 사용해 보십시오.
hello_test.rb
require 'minitest/autorun'

def hello(name)
  puts "#{name}さん、こんにちは!"
end

class HelloTest < Minitest::Test
  def test_hello
    assert_output("Bobさん、こんにちは!\n") { hello("Bob") }
  end
end
assert_output을 사용하면 표준 출력의 내용을 테스트할 수 있습니다.
multiple_of_eleven_test.rb
require 'minitest/autorun'

def multiple_of_eleven?(number)
  number % 11 == 0
end

class MultipleOfElevenTest < Minitest::Test
  def test_true
    assert multiple_of_eleven? 121
  end
  def test_false
    refute multiple_of_eleven? 13
  end
end
assert,refute 방법을 사용하면 진위를 측정할 수 있습니다.

후술


Minitest를 사용하면 테스트를 쉽게 수행할 수 있기 때문에 활용해보세요.
이번에도 Rspec에 관한 걸 출력하려고 해요.

참고 문헌


전문가가 되기 위한 루비 입문.
이토 순일[저]

좋은 웹페이지 즐겨찾기