如何清理Spork输出?

时间:2011-08-13 10:44:21

标签: ruby-on-rails spork guard

这绝对让我感到烦恼,我该怎么办呢?

Guard is now watching at '/home/pma/Sites/somesite.com'
Starting Spork for RSpec & Cucumber 
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.9.0.rc9/lib/spork/test_framework/rspec.rb:2: warning: already initialized constant DEFAULT_PORT
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.9.0.rc9/lib/spork/test_framework/rspec.rb:3: warning: already initialized constant HELPER_FILE
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.9.0.rc9/lib/spork/test_framework/cucumber.rb:2: warning: already initialized constant DEFAULT_PORT
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.9.0.rc9/lib/spork/test_framework/cucumber.rb:3: warning: already initialized constant HELPER_FILE
Using Cucumber
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.9.0.rc9/lib/spork/test_framework/rspec.rb:2: warning: already initialized constant DEFAULT_PORT
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.9.0.rc9/lib/spork/test_framework/rspec.rb:3: warning: already initialized constant HELPER_FILE
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.9.0.rc9/lib/spork/test_framework/cucumber.rb:2: warning: already initialized constant DEFAULT_PORT
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.9.0.rc9/lib/spork/test_framework/cucumber.rb:3: warning: already initialized constant HELPER_FILE
Using RSpec
Loading Spork.prefork block...
Loading Spork.prefork block...
Spork is ready and listening on 8989!
Spork is ready and listening on 8990!
Spork server for RSpec & Cucumber successfully started
Running all features
Disabling profiles...
Disabling profiles...
Exception encountered: #<Gherkin::Parser::ParseError: features/recruiting_goons.feature: Parse error at :6. Found feature when expecting one of: background, comment, scenario, scenario_outline, tag. (Current state: feature).>
backtrace:
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/gherkin-2.4.6/lib/gherkin/parser/parser.rb:57:in `block in event'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/gherkin-2.4.6/lib/gherkin/parser/parser.rb:99:in `event'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/gherkin-2.4.6/lib/gherkin/parser/parser.rb:55:in `event'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/gherkin-2.4.6/lib/gherkin/parser/parser.rb:45:in `method_missing'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/gherkin-2.4.6/lib/gherkin/lexer/i18n_lexer.rb:23:in `scan'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/gherkin-2.4.6/lib/gherkin/lexer/i18n_lexer.rb:23:in `scan'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/gherkin-2.4.6/lib/gherkin/parser/parser.rb:31:in `parse'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/cucumber-1.0.2/lib/cucumber/feature_file.rb:37:in `parse'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/cucumber-1.0.2/lib/cucumber/runtime/features_loader.rb:28:in `block in load'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/cucumber-1.0.2/lib/cucumber/runtime/features_loader.rb:26:in `each'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/cucumber-1.0.2/lib/cucumber/runtime/features_loader.rb:26:in `load'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/cucumber-1.0.2/lib/cucumber/runtime/features_loader.rb:14:in `features'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/cucumber-1.0.2/lib/cucumber/runtime.rb:132:in `features'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/cucumber-1.0.2/lib/cucumber/runtime.rb:45:in `run!'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/cucumber-1.0.2/lib/cucumber/cli/main.rb:43:in `execute!'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.9.0.rc9/lib/spork/test_framework/cucumber.rb:24:in `run_tests'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.8.5/lib/spork/run_strategy/forking.rb:13:in `block in run'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.8.5/lib/spork/forker.rb:21:in `block in initialize'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.8.5/lib/spork/forker.rb:18:in `fork'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.8.5/lib/spork/forker.rb:18:in `initialize'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.8.5/lib/spork/run_strategy/forking.rb:9:in `new'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.8.5/lib/spork/run_strategy/forking.rb:9:in `run'
/home/pma/.rvm/gems/ruby-1.9.2-p180/gems/spork-0.8.5/lib/spork/server.rb:47:in `run'
/home/pma/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/drb/drb.rb:1558:in `perform_without_block'
/home/pma/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/drb/drb.rb:1518:in `perform'
/home/pma/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/drb/drb.rb:1592:in `block (2 levels) in main_loop'
/home/pma/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/drb/drb.rb:1588:in `loop'
/home/pma/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/drb/drb.rb:1588:in `block in main_loop'
Guard::RSpec is running, with RSpec 2!
Running all specs

Gemfile.lock的:

GEM
  remote: http://rubygems.org/
  specs:
    abstract (1.0.0)
    actionmailer (3.0.9)
      actionpack (= 3.0.9)
      mail (~> 2.2.19)
    actionpack (3.0.9)
      activemodel (= 3.0.9)
      activesupport (= 3.0.9)
      builder (~> 2.1.2)
      erubis (~> 2.6.6)
      i18n (~> 0.5.0)
      rack (~> 1.2.1)
      rack-mount (~> 0.6.14)
      rack-test (~> 0.5.7)
      tzinfo (~> 0.3.23)
    activemodel (3.0.9)
      activesupport (= 3.0.9)
      builder (~> 2.1.2)
      i18n (~> 0.5.0)
    activerecord (3.0.9)
      activemodel (= 3.0.9)
      activesupport (= 3.0.9)
      arel (~> 2.0.10)
      tzinfo (~> 0.3.23)
    activeresource (3.0.9)
      activemodel (= 3.0.9)
      activesupport (= 3.0.9)
    activesupport (3.0.9)
    addressable (2.2.6)
    arel (2.0.10)
    bcrypt-ruby (2.1.4)
    builder (2.1.2)
    capybara (1.0.0)
      mime-types (>= 1.16)
      nokogiri (>= 1.3.3)
      rack (>= 1.0.0)
      rack-test (>= 0.5.4)
      selenium-webdriver (~> 0.2.0)
      xpath (~> 0.1.4)
    childprocess (0.2.0)
      ffi (~> 1.0.6)
    cucumber (1.0.2)
      builder (>= 2.1.2)
      diff-lcs (>= 1.1.2)
      gherkin (~> 2.4.5)
      json (>= 1.4.6)
      term-ansicolor (>= 1.0.5)
    cucumber-rails (1.0.2)
      capybara (>= 1.0.0)
      cucumber (~> 1.0.0)
      nokogiri (>= 1.4.6)
    database_cleaner (0.6.7)
    devise (1.4.2)
      bcrypt-ruby (~> 2.1.2)
      orm_adapter (~> 0.0.3)
      warden (~> 1.0.3)
    diff-lcs (1.1.2)
    erubis (2.6.6)
      abstract (>= 1.0.0)
    factory_girl (2.0.1)
    ffi (1.0.9)
    gherkin (2.4.6)
      json (>= 1.4.6)
    guard (0.5.1)
      thor (~> 0.14.6)
    guard-cucumber (0.5.2)
      cucumber (>= 0.10)
      guard (>= 0.4.0)
    guard-rails (0.0.3)
      guard (>= 0.2.2)
    guard-rspec (0.4.1)
      guard (>= 0.4.0)
    guard-sass (0.2.4)
      guard (>= 0.2.1)
      sass (>= 3.1)
    guard-spork (0.2.1)
      guard (>= 0.2.2)
      spork (>= 0.8.4)
    guard-test (0.3.0)
      guard (>= 0.2.2)
      test-unit (~> 2.2)
    haml (3.1.2)
    i18n (0.5.0)
    json (1.5.3)
    json_pure (1.5.3)
    launchy (2.0.4)
      addressable (~> 2.2.6)
    libnotify (0.5.7)
    mail (2.2.19)
      activesupport (>= 2.3.6)
      i18n (>= 0.4.0)
      mime-types (~> 1.16)
      treetop (~> 1.4.8)
    mime-types (1.16)
    nokogiri (1.5.0)
    orm_adapter (0.0.5)
    polyglot (0.3.2)
    rack (1.2.3)
    rack-mount (0.6.14)
      rack (>= 1.0.0)
    rack-test (0.5.7)
      rack (>= 1.0)
    rails (3.0.9)
      actionmailer (= 3.0.9)
      actionpack (= 3.0.9)
      activerecord (= 3.0.9)
      activeresource (= 3.0.9)
      activesupport (= 3.0.9)
      bundler (~> 1.0)
      railties (= 3.0.9)
    railties (3.0.9)
      actionpack (= 3.0.9)
      activesupport (= 3.0.9)
      rake (>= 0.8.7)
      rdoc (~> 3.4)
      thor (~> 0.14.4)
    rake (0.9.2)
    rdoc (3.9.1)
    rspec (2.6.0)
      rspec-core (~> 2.6.0)
      rspec-expectations (~> 2.6.0)
      rspec-mocks (~> 2.6.0)
    rspec-core (2.6.4)
    rspec-expectations (2.6.0)
      diff-lcs (~> 1.1.2)
    rspec-mocks (2.6.0)
    rspec-rails (2.6.1)
      actionpack (~> 3.0)
      activesupport (~> 3.0)
      railties (~> 3.0)
      rspec (~> 2.6.0)
    rubyzip (0.9.4)
    sass (3.1.7)
    selenium-webdriver (0.2.2)
      childprocess (>= 0.1.9)
      ffi (>= 1.0.7)
      json_pure
      rubyzip
    spork (0.8.5)
    sqlite3 (1.3.4)
    term-ansicolor (1.0.6)
    test-unit (2.3.1)
    thor (0.14.6)
    treetop (1.4.10)
      polyglot
      polyglot (>= 0.3.1)
    tzinfo (0.3.29)
    warden (1.0.5)
      rack (>= 1.0)
    xpath (0.1.4)
      nokogiri (~> 1.3)

PLATFORMS
  ruby

DEPENDENCIES
  capybara
  cucumber-rails
  database_cleaner
  devise
  factory_girl
  guard
  guard-cucumber
  guard-rails
  guard-rspec
  guard-sass
  guard-spork
  guard-test
  haml
  launchy
  libnotify
  rails (= 3.0.9)
  rspec-rails
  sass
  spork
  sqlite3

2 个答案:

答案 0 :(得分:1)

我不确定你想要清理哪个输出,但这就是我所看到的:

您拥有仅在启动时发生的标准spork消息。诸如Spork is ready and listening on 8989!之类的启动消息是一件好事,因为它们会告诉您Spork何时准备开始测试您的文件

有关常量初始化的一些消息不止一次。这可能是你不需要的时候需要的东西,但我猜你只有在你开始守卫的时候才会看到它们。

gherkin问题与您的recruiting_goons.feature文件有关,可能是格式化问题。你想要那个输出,因为它告诉你测试有问题。

答案 1 :(得分:0)

我收到类似的警告。比尔林顿是对的,我的是因为我需要的东西,当我不需要时。也就是说,我需要每个模型spec文件中的模型。我这样做是因为当我单独运行该模型规范时,除非我明确要求模型,否则部分代码覆盖结果最终不会覆盖模型并产生不正确的结果。当我从我的规范中删除“require'model'”行时,警告就消失了。请注意,对我来说,它明确提到的文件名是我的模型名称,这是冗余的“必需”。

净网,查找多次需要“rspec.rb”和“cucumber.rb”文件的原因。只需要他们一次。