Rake task 테스트
GitLab에서 Rake task를 더 쉽게 테스트하기 위한 RSpec 메타데이터 태그 및 헬퍼 메서드 사용 방법을 설명합니다.
Rake task 테스트를 좀 더 쉽게 하려면 다음 중 하나를 사용하세요: RSpec의 메타데이터 태그 type: :task 를 사용하거나, spec/tasks 또는 ee/spec/tasks 에 스펙 파일을 배치하세요. 이렇게 하면 RakeHelpers 가 포함되어, task 실행을 가능하게 하는 run_rake_task(<task>) 메서드가 노출됩니다. 사용 가능한 모든 메서드는 spec/support/helpers/rake_helpers.rb 를 참조하세요. :silence_stdout 를 추가하면 $stdout 을 리다이렉트할 수 있습니다. $stdout 과 $stderr 모두를 억제하려면 :silence_output 을 대신 사용하세요. 예시: require 'spec_helper' describe 'gitlab:shell rake tasks', :silence_stdout do before do Rake.application.rake_require 'tasks/gitlab/shell' stub_warn_user_is_not_gitlab end describe 'install task' do it 'invokes create_hooks task' do expect(Rake::Task['gitlab:shell:create_hooks']).to receive(:invoke) run_rake_task('gitlab:shell:install') end end end 테스트 문서로 돌아가기