RSpec-소개

RSpec은 Ruby 프로그래밍 언어를위한 단위 테스트 프레임 워크입니다. RSpec은 동작 기반 개발 도구이기 때문에 JUnit과 같은 기존 xUnit 프레임 워크와 다릅니다. 이것이 의미하는 바는 RSpec으로 작성된 테스트는 테스트중인 애플리케이션의 "동작"에 초점을 맞추는 것입니다. RSpec은 응용 프로그램의 작동 방식을 강조하지 않고 대신 응용 프로그램의 작동 방식, 즉 응용 프로그램이 실제로 수행하는 작업에 중점을 둡니다.

RSpec 환경

먼저 컴퓨터에 Ruby를 설치해야합니다. 아직 이전하지 않은 경우, 당신은 다운로드하여 주요 루비 웹 사이트에서 루비를 설치할 수 있습니다 - 루비 .

Windows에 Ruby를 설치하는 경우 여기에 Windows 용 Ruby 설치 프로그램이 있어야합니다. http://www.rubyinstaller.org

이 자습서에서는 메모장 및 명령 줄 콘솔과 같은 텍스트 편집기 만 필요합니다. 여기의 예제는 Windows에서 cmd.exe를 사용합니다.

cmd.exe를 실행하려면 시작 메뉴를 클릭하고 "cmd.exe"를 입력 한 다음 Return 키를 누르십시오.

cmd.exe 창의 명령 프롬프트에서 다음 명령을 입력하여 사용중인 Ruby 버전을 확인하십시오.

ruby -v

다음과 비슷한 출력이 표시되어야합니다.

ruby 2.2.3p173 (2015-08-18 revision 51636) [x64-mingw32]

이 튜토리얼의 예제는 Ruby 2.2.3을 사용하지만 2.0.0보다 높은 Ruby 버전이면 충분합니다. 다음으로 Ruby 설치를위한 RSpec gem을 설치해야합니다. gem은 자신의 코드에서 사용할 수있는 Ruby 라이브러리입니다. gem을 설치하려면 다음을 사용해야합니다.gem 명령.

이제 Rspec gem을 설치하겠습니다. cmd.exe 창으로 돌아가서 다음을 입력하십시오.

gem install rspec

설치된 종속 gem의 목록이 있어야합니다. 이것은 rspec gem이 올바르게 작동하는 데 필요한 gem입니다. 출력이 끝나면 다음과 같은 것을 볼 수 있습니다.

Done installing documentation for diff-lcs, rspec-support, rspec-mocks,
   rspec-expectations, rspec-core, rspec after 22 seconds 
6 gems installed

출력이 똑같지 않더라도 걱정하지 마십시오. 또한 Mac 또는 Linux 컴퓨터를 사용하는 경우 다음 중 하나를 실행해야 할 수 있습니다.gem install rspec 명령 사용 sudo 또는 HomeBrew 또는 RVM과 같은 도구를 사용하여 rspec gem을 설치하십시오.

Hello World

시작하려면 RSpec 파일을 저장할 디렉터리 (폴더)를 만들어 보겠습니다. cmd.exe 창에서 다음을 입력하십시오.

cd \

그런 다음-

mkdir rspec_tutorial

그리고 마지막으로-

cd rspec_tutorial

여기에서 spec이라는 이름의 또 다른 디렉토리를 만들 것입니다.

mkdir spec

이 폴더에 RSpec 파일을 저장하겠습니다. RSpec 파일은 "사양"으로 알려져 있습니다. 이것이 혼란스러워 보이면 사양 파일을 테스트 파일로 생각할 수 있습니다. RSpec은 "사양"의 약어 인 "사양"이라는 용어를 사용합니다.

RSpec은 BDD 테스트 도구이므로 목표는 애플리케이션이 수행하는 작업과 사양을 따르는 지 여부에 초점을 맞추는 것입니다. 행동 기반 개발에서 사양은 종종 "사용자 스토리"로 설명됩니다. RSpec은 대상 코드가 올바르게 작동하는지, 즉 사양을 따르는지를 명확히하기 위해 설계되었습니다.

Hello World 코드로 돌아 갑시다. 텍스트 편집기를 열고 다음 코드를 추가하십시오-

class HelloWorld

   def say_hello 
      "Hello World!"
   end
   
end

describe HelloWorld do 
   context “When testing the HelloWorld class” do 
      
      it "should say 'Hello World' when we call the say_hello method" do 
         hw = HelloWorld.new 
         message = hw.say_hello 
         expect(message).to eq "Hello World!"
      end
      
   end
end

그런 다음 위에서 만든 spec 폴더의 hello_world_spec.rb라는 파일에이를 저장합니다. 이제 cmd.exe 창으로 돌아가서 다음 명령을 실행하십시오.

rspec spec spec\hello_world_spec.rb

명령이 완료되면 다음과 같은 출력이 표시됩니다.

Finished in 0.002 seconds (files took 0.11101 seconds to load) 
1 example, 0 failures

축하합니다. 첫 번째 RSpec 단위 테스트를 만들고 실행했습니다!

다음 섹션에서는 RSpec 파일의 구문에 대해 계속 설명합니다.