5

몇 달이 지나면 레일 앱에서 rspec successfuly로 spork를 사용했습니다. 이제 나는이 게임에 자스민를 추가하려고, 그래서 나는 독립 모드에 아주 잘 내 Gemfile레일에 재스민이있는 스포크 사용

gem 'headless' 
gem 'jasmine' 
gem 'jasmine-rails' 

재스민 작동에 추가하지만 그것은 매우 사용자 친화적이 아닌 각 실행에 대해 파이어 폭스를 실행하는 데 필요한 나는 그것이 spork와 함께 사용하는 것이 가능하다는 것을 알아 차렸다. 내가 spork을 시작할 때 :

Using RSpec 
Preloading Rails environment 
Loading Spork.prefork block... 
No runner found, attempting to compile... 
make: *** No rule to make target `clean'. Stop. 
which: no gmake in (/usr/lib/ruby/gems/1.9.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/opt/java/bin:/opt/java/db/bin:/usr/bin/core_perl:/opt/qt/bin:/home/user/.gem/ruby/1.9.1/bin/) 
which: no qmake-qt4 in (/usr/lib/ruby/gems/1.9.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/opt/java/bin:/opt/java/db/bin:/usr/bin/core_perl:/opt/qt/bin:/home/user/.gem/ruby/1.9.1/bin/) 
Failure to open file: /usr/lib/ruby/gems/1.9.1/gems/jasmine-headless-webkit-0.8.4/ext/jasmine-webkit-specrunner/Makefile 
Unable to generate makefile for: specrunner.pro 
true 
/usr/lib/ruby/1.9.1/fileutils.rb:1371:in `initialize': Permission denied - /usr/lib/ruby/gems/1.9.1/gems/jasmine-headless-webkit-0.8.4/ext/jasmine-webkit-specrunner/Makefile (Errno::EACCES) 
from /usr/lib/ruby/1.9.1/fileutils.rb:1371:in `open' 
from /usr/lib/ruby/1.9.1/fileutils.rb:1371:in `block in copy_file' 
from /usr/lib/ruby/1.9.1/fileutils.rb:1370:in `open' 
from /usr/lib/ruby/1.9.1/fileutils.rb:1370:in `copy_file' 
from /usr/lib/ruby/1.9.1/fileutils.rb:477:in `copy_file' 
from /usr/lib/ruby/1.9.1/fileutils.rb:396:in `block in cp' 
from /usr/lib/ruby/1.9.1/fileutils.rb:1515:in `block in fu_each_src_dest' 
from /usr/lib/ruby/1.9.1/fileutils.rb:1531:in `fu_each_src_dest0' 
from /usr/lib/ruby/1.9.1/fileutils.rb:1513:in `fu_each_src_dest' 
from /usr/lib/ruby/1.9.1/fileutils.rb:395:in `cp' 
from extconf.rb:10:in `<main>' 
Permission denied - /usr/lib/ruby/gems/1.9.1/gems/jasmine-headless-webkit-0.8.4/ext/jasmine-webkit-specrunner/jasmine-webkit-specrunner (Errno::EACCES) 

어떤 생각이 문제를 해결하려면? 재스민에 대한 배경 테스트를하는 다른 옵션이 있습니까?

내가 사용

  • 아치 리눅스
  • 루비 1.9.3p327
  • 레일 3.2.8
  • spork 0.9.2
  • 자스민 1.3.1

답변

1

가있다 파이어 폭스를 열지 않는 다른 방법 - PhantomJS. 그것은 Firefox를 사용해야하는 Selenium 드라이버를 대체합니다. PhantomJS는 또 다른 방법 인 WebKit의 헤드리스 버전을 사용합니다. this Railscast을 보시면보다 유용한 정보를 얻을 수 있습니다.

1

qmake 및 qmake-qt4의 버전은 무엇입니까? qmake-qt4 -vqmake -v을 실행하여 광고를 게재 할 수 있습니다.

분명히 jasmine-headless-webkit 용으로 Qt 4.7 버전이 설치되어 있어야합니다. 더 낮은 버전이 설치되었을 수 있습니다. 이 문제 확인 : No runner found, attempting to compile...

노트 here을 참조하여 새로운 버전의 Qt로 업그레이드를 시도하십시오.

+1

Qmake 버전 2.01a와 Qt 4.8.4가 있으므로이 문제와 관련이없는 것으로 보입니다. – Nibbler

1

https://github.com/netzpirat/guard-jasmine을 사용하는 것이 좋습니다.

당신은 궁극적으로 phantomJS를 설치해야하며 (또한 경비원도 있음) guard-jasmine은 기본적으로 jasmine 사양을 모니터하고 변경 사항이있을 때마다 콘솔에서 테스트를 실행합니다. 필요한 경우 브라우저에서 재스민을 실행하는 래퍼도 제공합니다.