5

Kể từ vài tháng, tôi đã sử dụng spork với rspec thành công trong ứng dụng đường ray. Bây giờ tôi cố gắng thêm hoa nhài với trò chơi này, vì vậy tôi thêm vào Gemfile tôiSử dụng Spork với hoa nhài trong đường ray

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

Jasmine hoạt động rất tốt trong chế độ độc nhưng nó đòi hỏi để khởi động firefox cho mỗi lần chạy mà không phải là rất thân thiện và Tôi nhận thấy rằng nó có thể sử dụng nó với spork. Nhưng khi tôi khởi động 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) 

Bất kỳ ý tưởng để giải quyết này? Có lựa chọn nào khác để thử nghiệm nền hoa nhài không?

tôi sử dụng:

  • archlinux
  • ruby ​​1.9.3p327
  • ray 3.2.8
  • Spork 0.9.2
  • nhài 1.3.1

Trả lời

1

Có một cách khác để tránh mở Firefox - PhantomJS. Nó thay thế trình điều khiển Selenium, cần sử dụng Firefox. PhantomJS sử dụng một cách tiếp cận khác - phiên bản không đầu của WebKit. Bạn có thể xem thêm thông tin hữu ích khi xem this Railscast.

1

Qmake và qmake-qt4 của bạn là phiên bản nào? Bạn có thể lấy chúng bằng cách chạy qmake-qt4 -vqmake -v.

Dường như, bạn cần phiên bản Qt 4.7 được cài đặt cho trang web hoa nhài-headless. Bạn có thể cài đặt phiên bản thấp hơn. Kiểm tra vấn đề này: No runner found, attempting to compile...

Thử nâng cấp lên phiên bản Qt mới hơn, bằng cách tham khảo ghi chú here.

+1

Tôi có phiên bản Qmake 2.01a và Qt 4.8.4 để nó có vẻ không liên quan đến vấn đề này. – Nibbler

1

Tôi khuyên bạn nên sử dụng https://github.com/netzpirat/guard-jasmine.

Bạn sẽ phải cài đặt phantomJS (và cũng có thể bảo vệ) nhưng guard-jasmine về cơ bản sẽ giám sát thông số hoa nhài của bạn và bất cứ khi nào có thay đổi xảy ra, nó sẽ chạy thử nghiệm của bạn trong bảng điều khiển. Nó cũng cung cấp một wrapper để chạy hoa nhài trong trình duyệt nếu cần thiết.

Các vấn đề liên quan