Rspec에서 단일 테스트/사양 파일을 어떻게 실행합니까?
예를 들어 편집 중인 하나의 파일에 대해 단일 사양 파일의 테스트를 실행할 수 있어야 합니다. rake spec
모든 사양을 실행합니다. 때문에 제프젝트프레아가닙다니트로젝일는즈로▁my,아다니닙▁is▁so제▁project가.rake spec:doc
작동하지 않습니다.
이것이 중요한지는 모르겠지만, 여기 제 디렉토리 구조가 있습니다.
./Rakefile./lib./lib/syslog.sys./lib/smart./lib/doc/doc.dll./lib/sys/db.sys./규격./spec/spec.opts./spec/spec_message.dll./spec/db_spec.dll
또는 레이크를 건너뛰고 'rspec' 명령을 사용할 수 있습니다.
bundle exec rspec path/to/spec/file.rb
당신의 경우, 당신의 ./spec/db_spec.rb 파일에 적절한 도우미가 포함되어 있다면 잘 작동할 것이라고 생각합니다.
이전 버전의 rspec을 사용하는 경우:
bundle exec spec path/to/spec/file.rb
원시 호출:
레이크 SPEC=SPEC/컨트롤러/세션_controller_spec.rb \SPEC_OPTS="-e \"쿠키로 로그인해야 한다\""
이제 이것을 편집기에 내장하는 방법을 알아보세요.
이 질문은 오래된 질문이지만 단일 테스트를 실행하는 방법을 검색할 때 Google 상단에 표시됩니다.최근에 추가된 것인지는 모르겠지만, 사양에서 단일 테스트를 실행하려면 다음을 수행할 수 있습니다.
rspec path/to/spec:<line number>
여기서 -line number-는 검정의 일부를 포함하는 라인 번호입니다.예를 들어 다음과 같은 규격이 있는 경우:
1:
2: it "should be awesome" do
3: foo = 3
4: foo.should eq(3)
5: end
6:
spec/models/foo_spec.rb에 저장되어 있다고 가정합니다.그런 다음 다음을 실행합니다.
rspec spec/models/foo_spec.rb:2
그리고 그것은 단지 하나의 스펙을 실행할 것입니다.사실, 그 숫자는 2에서 5 사이의 숫자일 수 있습니다.
*e*ample 테스트 사례의 실제 텍스트를 다음과 같이 사용할 수도 있습니다.-e
!
이유:
it "shows the plane arrival time"
사용할 수 있습니다.
rspec path/to/spec/file.rb -e 'shows the plane arrival time'
./scripts/spec path/to/spec/file.rb -e 'shows the plane arrival time'
여기는 갈퀴가 필요 없습니다.
도움말에서(규격 -h):
-l, --line LINE_NUMBER Execute example group or example at given line.
(does not work for dynamically generated examples)
예: spec spec/runner_spec.rb -l 162
모든 rspec 파일을 실행하는 방법rspec
참고: 프로젝트의 루트에 있어야 합니다.
하나의 rspec 파일을 실행하는 방법rspec 'path_to/spec.rb'
참고: 'path_to/spec.sys'를 경로로 바꿉니다.따옴표는 선택 사항입니다.
하나의 파일에서 하나의 rspec 테스트를 실행하는 방법rspec 'path_to/spec.rb:7'
참고::7은 테스트가 시작되는 라인 번호입니다.
을 이 신 다 인 으 다 했 그 을 것 것 없 수 입 니 을 은 가 질 당 신 면 약 설 치 로 그 러 보 플 닌 석 아 이 ▁the ▁r ▁if t ▁have ' 니 spec ▁won 입 ▁then spec 다▁you 것 ▁a 만 ▁rather 약 , ▁as 을 ▁installed ▁gem ▁you ▁pluginspec
실행 가능한
어쨌든 루비를 사용하여 파일을 실행하기만 하면 됩니다.rspec 코드는 테스트를 실행할 수 있을 정도로 영리합니다.
예:
ruby myclass_spec.rb
http://github.com/grosser/single_test 을 통해 다음과 같은 작업을 수행할 수 있습니다.
rake spec:user #run spec/model/user_spec.rb (searches for user*_spec.rb)
rake test:users_c #run test/functional/users_controller_test.rb
rake spec:user:token #run the first spec in user_spec.rb that matches /token/
rake test:user:token #run all tests in user_test.rb that match /token/
rake test:last
rake spec:last
Ruby 1.9.2 및 Rails 3에는 하나의 사양 파일을 쉽게 실행할 수 있는 방법이 있습니다.
ruby -I 사양/모델/user_spec.rb
설명:
ruby
명령이 보다 빠른 경향이 있습니다.rake
지휘권-I spec
"파일을 찾을 때 'spec' 디렉터리를 검색합니다."spec/models/user_spec.rb
실행할 파일입니다.
이 질문에 대한 많은 훌륭한 답변이 작성되었지만, Rspec 접근법을 사용하는 답변은 없습니다.
태그를 사용하여 다른 파일에서 하나 이상의 사양을 실행합니다. 현재 개발 작업과 관련된 사양만 실행합니다.
예를 들어, "dev" 태그를 "current" 값으로 추가합니다.
it "creates an user", dev: :current do
user = create(:user)
expect(user.persisted?).to be_truthy
end
그럼 나는 뛰어요
bundle exec rspec . --tag dev:current
개별 사양 또는 그룹에서 서로 다른 태그/값을 설정할 수 있습니다.
게시물이 오래되고 명령이 변경되어 이러한 예제를 사용하는 데 어려움을 겪었습니다.
몇 번 둘러본 후에 저는 이 작품들을 발견했습니다.
rspec spec/message/user_spec.message
그러면 단일 파일만 실행되고 터미널에서 유용한 출력을 제공합니다.
반점이 있는.
또는 자동 테스트를 확인합니다.
명령 창에서 자동 테스트를 실행하면 저장할 때마다 사양 파일이 실행됩니다.또한 지정한 파일이 실행될 때마다 실행됩니다.
예를 들어 person_spec.rb라는 모델 사양 파일과 person.rb라는 모델 파일이 있으면 편집기에서 이러한 파일 중 하나를 저장할 때마다 사양 파일이 실행됩니다.
예를 들어 작업관리 만들기 테스트를 실행하고 있다고 가정해 보겠습니다.아래와 같은 파일 creet_spec.rb를 사용하여 언제든지 특정 작업관리 코드를 실행할 수 있습니다.
rspec/spec/features/controller/spec_file_name.rb
Example:
Creating rspec spec/features/todos/create_spec.rb
Editing rspec spec/features/todos/edit_spec.rb
Deleting rspec spec/features/todos/destroy_spec.rb
모든 사양을 한 번의 짧은 시간에 실행하려면 다음과 같이 하십시오.
rspec
특정 컨트롤러 사용자에서 모든 사양을 실행하려면 다음과 같이 하십시오.
rspec/spec/feaures/controller_name
Example: rspec/spec/features/todos
그것이 당신에게 더 많은 이해를 주기를 바랍니다!
그리고 테스트 파일에 특정 라인을 실행할 수 있습니다.
rspec spec/models/model_spec.rb:47
언급URL : https://stackoverflow.com/questions/143925/how-do-you-run-a-single-test-spec-file-in-rspec
'source' 카테고리의 다른 글
루비에서 문자열의 0 또는 길이 == 0을 확인하는 더 좋은 방법이 있습니까? (0) | 2023.06.03 |
---|---|
어디에서나 애플리케이션 컨텍스트를 사용하고 계십니까? (0) | 2023.06.03 |
장치에서 현재 언어 가져오기 (0) | 2023.06.03 |
img src SVG CSS를 사용하여 스타일 변경 (0) | 2023.06.03 |
상수 배열 선언 (0) | 2023.06.03 |