【Rails6】RSpec의 도입으로부터 테스트 실시까지의 순서서

소개



모델 및 컨트롤러별로 단위 테스트를 수행할 때 테스트 실행 파일을 작성하는 명령을 실행해야 합니다.

매회, 순서를 보답하는 것은 귀찮고, 참고서라면 설명문등이 있으므로, 눈으로 쫓는데 조금 당황할 때도 있을까 생각합니다.

그래서, 테스트 실시 파일 작성까지의 순서를 정리하고 있으면, 작업을 효율화해 테스트를 실시할 수 있는 것이 아닐까 생각해 본 기사를 작성했습니다.

개요



테스트 실시 전의 준비 순서와 테스트 실시 명령에 대해 기술하고 있습니다.

버전



루비 버전 ruby-2.6.5
Rails 버전 Rails:6.0.0
rspec-rails 4.0.0

전체상



①gem 추가
②RSpec의 도입

모델 단위 테스트 코드
③모델의 테스트 파일을 작성
④ FactoryBot을 도입하여 테스트를 실행
⑤ 테스트 코드를 실행하는 명령

컨트롤러 단위 테스트 코드
⑥ 컨트롤러 테스트 파일 작성
⑦ 테스트 코드를 실행하는 명령

결합 테스트 코드
⑧ 결합 테스트의 테스트 파일 작성
⑨ 테스트 코드를 실행하는 명령

※설치 완료하고 있는 경우는 ③부터 진행해 주십시오.

①gem 추가



Gemfile에 다음 설명을 추가하십시오.

group :development, :test do
  # Call 'byebug' anywhere in the code to stop execution and get a debugger console
  gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]

#〜省略〜

  gem 'rspec-rails', '~> 4.0.0'
  gem 'factory_bot_rails'
  gem 'faker'
end

#〜省略〜

개발 중인 앱의 디렉토리로 이동한 다음 bundle install을 실행합니다.
$ bundle install

②RSpec의 도입



RSpec을 설치합니다.
$ rails g rspec:install

.rspec에 설정을 추가합니다.

/.rspec
--require spec_helper
--format documentation #←追加します


③모델의 테스트 파일을 작성



다음 명령을 실행하여 모델 테스트 파일을 생성합니다.
$ rails g rspec:model モデル名(単数形)

④ FactoryBot을 도입하여 테스트 실행



FactoryBot을 사용하여 인스턴스를 설정합니다.

그런 다음 rspec의 모델에 테스트 내용을 설명합니다.

④ 보충



※처음에는 수동으로 spec 디렉토리 안에, factories 디렉토리를 작성해, 한층 더 factorories 디렉토리안에, FactoryBot의 파일을 작성할 필요가 있습니다.

그러나, 그 후는 rails g rspec:model 모델명 (단수형) 실행 후, 자동으로 생성됩니다.



⑤ 테스트 코드를 실행하는 명령


$ bundle exec rspec spec/models/モデル名_spec.rb

⑥ 컨트롤러 테스트 파일 작성



다음 명령을 실행하여 컨트롤러 테스트 파일을 작성하십시오.
$ rails g rspec:request コントローラー名(複数形)

⑦ 테스트 코드를 실행하는 명령


$ bundle exec rspec spec/requests/コントローラー名_spec.rb

⑧ 결합 테스트의 테스트 파일 작성


$ rails g rspec:system オブジェクト名(複数形)

⑨ 테스트 코드를 실행하는 명령


$ bundle exec rspec spec/system/オブジェクト名_spec.rb

이상입니다.

좋은 웹페이지 즐겨찾기