저는 현재 repo에서 코드를 다운로드하고 코드에서 rspec을 실행 한 다음 RSpec에서 결과를 처리하는 sinatra 프레임 워크를 실행하려고합니다. 그러나, 다른 응용 프로그램에서 호출 할 때 rspec을 실행하는 데 문제가 있습니다.전혀 다른 sinatra 앱에서 Rspec을 실행하고 있습니까?
나는 다음과 같은 오류가 계속 : 출력의 톤을 실행 한 후
/Users/dir/.rvm/gems/[email protected]/gems/bundler-1.1.5/lib/bundler/rubygems_integration.rb:147:in `block in replace_gem': rspec-core is not part of the bundle. Add it to Gemfile. (Gem::LoadError)
from /Users/dir/.rvm/gems/ruby-1.9.3-p194/bin/rspec:22:in `<main>'
를, 그것은 기본적으로 루비 번들 간부을 실행하기 전에 올바른 디렉토리로 전환되지 요약된다. 나는 아무 것도 성공하지 못하게하려고 노력했다. 비록 내가 디렉토리를 바꾸더라도, 내가 원하는 어플리케이션이 아닌, 내가 가지고있는 어플리케이션에서 RSpec을 실행하려고 시도 할 것 같다. 해.
Dir.chdir('../target_app'){
exe = "bundle exec rspec spec"
`#{exe}`
}
backticks, exec 및 system()도 이와 같이 성공하지 못했습니다.
p = ChildProcess.build('bundle', 'exec', 'rspec', 'spec')
p.io.inherit!
p.cwd = '../target_app'
p.start
모든 단서 또는이 크게 감사하겠습니다 해결하는 방법에 대한 도움말 :
`cd ../target_app && bundle exec rspec spec`
는 또한 성공하지 ChildProcess 같은 것들을 시도!
편집 :
/Users/me/dev/target_app
bin/rspec spec -o ../tmp.txt
/Users/me/.rvm/gems/[email protected]/gems/bundler-1.1.5/lib/bundler/rubygems_integration.rb:223:in `block in replace_bin_path': can't find executable rspec (Gem::Exception)
from bin/rspec:16:in `<main>'
1. 저는 항상 모든 프로젝트에 대해 이것을합니다. 또한'--path vendor'를 추가하면 작업중인 다른 프로젝트의 전체 프로젝트를 샌드위치하는 데 정말로 도움이됩니다. YMMV – iain
방금 시도했지만 아직 성공하지 못했습니다. 난 여기에서 지시 사항을 따라했습니다 : http://robots.thoughtbot.com/post/15346721484/use-bundlers-binstubs 그리고 난 여전히 같은 오류가 발생합니다. 나는 그 폴더에서 gemfile을로드 할 필요가 있다고 생각하지만, 제대로 작동하는지 확실하지 않다. 올바른 방법이다. – roloenusa
대상 앱이 아닌 초기 애플리케이션에 상대적으로'bin/rspec'을 실행하고 싶다. 'rspec = File.expand_path ("./ bin/rspec")'를 사용하여'Dir.chdir'을하기 전에 경로를 bin/rspec으로 설정하십시오 (작동한다면'File.dirname (__ FILE__)'이 더 강력 할 수 있습니다. –