小编Joe*_*sch的帖子

Ruby - 无法在45秒内绑定到锁定端口7054(Selenium :: WebDriver :: Error :: WebDriverError)

我最近在尝试运行任何Cucumber测试时都开始看到此错误消息.我做了一些研究,发现了一些其他类似的错误实例,但大多数是与浏览器相关的问题.我在此输出中看不到任何特定于浏览器的错误消息:

unable to bind to locking port 7054 within 45 seconds (Selenium::WebDriver::Error::WebDriverError)
Run Code Online (Sandbox Code Playgroud)

我看到这里发布的另一个问题得到解答(硒webdriver例外),但是这个解决方案对我不起作用.运行" lsof -i TCP:7054 "不会产生任何输出.

如果有人建议这样做,我已经多次重新启动我的机器并擦掉我的宝石并重新运行"捆绑".

以下是我正在使用的相关宝石:

capybara (0.4.1.2)
cucumber (0.10.7)   
cucumber-rails (0.4.1)
fuubar-cucumber (0.0.9)
selenium-webdriver (0.2.0)
Run Code Online (Sandbox Code Playgroud)

可以肯定的是,我也试过用Firefox 3.6,4.0和5.0运行这些测试.每次都是相同的消息.

不要成为阴谋理论家或任何东西,但在手动退出运行我的测试套件并在Cucumber启动的所有活动Firefox进程上运行之前,一切正常.我在测试套件中同时运行了大约9个Firefox实例.我不确定这是否会导致某些事情发生,从而产生我现在看到的运行Cucumber测试的结果.

有没有人有解决这个问题的建议?

ruby selenium ruby-on-rails cucumber

11
推荐指数
1
解决办法
8593
查看次数

JRuby on Rails:在Rails应用程序中使用自定义Java类

我刚开始使用JRuby on Rails并且非常喜欢它.我知道如何在我的Rails应用程序中使用Java API中的当前类,但如果我想创建一个用纯Java代码编写的新自定义类,我怎样才能在我的Rails应用程序中使用它?

例如,假设我创建了Dog.java:

class Dog {
  private String name;

  public Dog() {
    name = "Fido";
  }

  public String getName() {
    return name;
  }
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能在我的Rails应用程序中创建一个新的Dog对象(Dog.new)?我需要将Dog.java或Dog.class文件放在某处,然后调用某种形式的"import"将其导入我的Rails应用程序.我不知道这应该放在目录结构中,也不知道我应该在哪里以及如何告诉我的应用程序如何包含它.

java ruby-on-rails jruby jrubyonrails

6
推荐指数
1
解决办法
1499
查看次数

为Ruby gem创建安装生成器

我很擅长构建Ruby宝石,并且正在尝试我的第一个宝石.我正在为我的gem编写一个生成器,它将在我的Rails应用程序中生成一个迁移.我只是想在Rails应用程序中包含gem,运行"rails g mygem:install"让它创建迁移,然后运行"rake db:migrate"来完成所有操作.

我找到了几种不同的方法来完成类似的任务,但到目前为止还没有任何工作.我似乎无法让Rails应用程序找到生成器.我尝试过的最新指南位于:http://www.railsdispatch.com/posts/how-rails-3-enables-more-choices-part-1.

这是我目前的宝石结构:

-lib/
  -generators/
    -templates/
      -some_migration.rb
    -install_generator.rb
  -gemname/
    -rails/
      -railtie.rb
      -engine.rb
      -tasks/
        -gemname.rake
  -gemname.rb
 -spec/
 -gemname.gemspec
Run Code Online (Sandbox Code Playgroud)

这是我的install_generator.rb文件的样子:

require 'rails'

module Gemname
  class InstallGenerator < ::Rails::Generators::Base
    include Rails::Generators::Migration
    source_root File.expand_path('../templates', __FILE__)

    desc "add the migrations"
    def self.next_migration_number(path)
      unless @prev_migration_nr
        @prev_migration_nr = Time.now.utc.strftime("%Y%m%d%H%M%S").to_i
      else
        @prev_migration_nr += 1
      end
     @prev_migration_nr.to_s
    end

    def copy_migrations
     migration_template "some_migration.rb", "db/migrate/some_migration.rb"
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

我不确定是否有我遗失的东西.我正在使用Rails 3.2应用程序进行测试,该应用程序在其Gemfile中列出了我的gem并安装了gem.gem文件夹结构有什么问题可能阻止我的生成器出现吗?我需要在某处需要什么吗?

任何帮助表示赞赏.

ruby rubygems ruby-on-rails generator

6
推荐指数
1
解决办法
2244
查看次数