草庐IT

webkit-tap-highlight-color

全部标签

ruby-on-rails - 是否可以在 Heroku Cedar 上运行 capybara-webkit(即 fork 的 webkit_server)?

我需要在Rails应用程序中运行capybara-webkit以启用带有JavaScript支持的headlessWeb浏览(即不用于测试/CI目的,webrat或其他验收测试驱动程序/框架将不起作用)。我想知道这在Heroku部署中是否可行,特别是因为它需要QtWebKit以及通过套接字通信forkwebkit_server进程的能力。我愿意接受关于如何在Heroku上进行这项工作的创造性想法(例如,一组workerdynos)。我希望有人能更好地处理Heroku环境中存在的限制,或者可以断然排除这种可能性,这样我就可以在必要时转向AWSEC2。搜索这个往往会发现很多关于CI服务器的

ruby - 从 Ruby 中的 Capybara 运行时,webkit_server 会定期挂起

我遇到了一个问题,当访问一个URL时,带有Capybara和capybara-webkit的webkit_server实例在headless连接到本地Xvfb屏幕时挂起。这似乎是在反复访问不同的URL并执行查找程序几分钟后发生的。(我将capybara用于普通Ruby中的屏幕抓取应用程序,而不是用于测试。)我已经确认网站挂起时仍然可以访问(例如,通过命令行上的curl或wget)。我还尝试将调用访问和后续查找器的Ruby代码包装在超时block中,以便在等待60秒后访问新的URL,但是在第一次发生这种情况后任何visit()尝试都会失败。解决此问题的唯一方法是同时终止调用Capybar

ruby-on-rails - 无法在 Rails 4 中使用 bundle install 命令安装 capybara-webkit

在我的Rails4应用程序中执行命令bundleinstall时出现以下错误。>ruby-vruby2.1.8p440(2015-12-16revision53160)[i386-mingw32]>rails--versionCouldnotfindgem'capybara-webkitx86-mingw32'inanyofthegemsourceslistedinyourGemfileoravailableonthismachine.Run`bundleinstall`toinstallmissinggems.我的Gemfile........group:development,:l

ruby - 带 capybara -webkit 的录像机

我正在使用capybara-webkit来测试与第三方网站的集成(我需要javascript)。我想使用vcr来记录在集成测试期间发出的请求,但capybara-webkit不通过nethttp,因此vcr无法记录它们。我将如何着手编写一个允许我记录请求的vcr适配器? 最佳答案 不幸的是,VCR与capybara-webkit非常不兼容。事实上,capybarawebkit正在使用webkit,它是在c中。作为VCR基础的Webmock和Fakeweb只能用于Rubyweb请求。让两者协同工作可能是一项艰巨的任务。我用两种方法解决

ruby - Ruby 中 Kernel#yield_self、yield(self)、Kernel#then 和 Object#tap 之间的区别?

Ruby2.5引入了#yield_self方法。Ruby2.6引入了#then方法。yield_self、yield(self)、then和现有的Object#tap有什么区别方法? 最佳答案 tap之间的区别和yield_self在这两种方法返回的内容中。Object#tap将self生成到block,然后返回self。Kernel#yield_self将自身交给block,然后返回block的结果。这里有一些例子,说明每个例子都有用:点击替换方法末尾对result行的需要:defmy_methodresult=get_some_

ruby - 无法让 capybara-webkit 工作

我正在使用capybara对我的Rails3应用程序进行集成测试。当我将:js=>true添加到一个场景时,我的测试使用selenium,但是当我更改为使用js的webkit驱动程序时,我得到如下错误:capybara::Driver::Webkit::WebkitInvalidResponseError:无法加载URL:http://www.example.dev:7171/user_sessions我的添加是一个多域应用程序,所以在我的spec_helper中我设置了端口:capybara.server_port=7171在后台block中,我这样设置app_host:Capyba

ruby-on-rails - NoMethodError(#<Elasticsearch::Model::Response::Result> 的未定义方法 `highlight'

我将为我的ruby​​onrails项目使用Elasticsearch。当我搜索一些在我的文章中使用过多的词时,出现此错误。NoMethodError(undefinedmethod`highlight'for#)我在日志制作中得到了这个。这就是我所做的一切:在Controller中:#POST/search/articledefsearchrenderjson:Article.search(params[:query]),each_serializer:ElasticsearchResultsSerializerend这是我的article.rb模型#default_scope{or

ruby - Super.tap {} - 它的作用和用例是什么?

我在gem中发现了这种结构,但不明白其意图。我知道tap单独做什么,但为什么有人会调用super.tap{}而不是在super调用后正常继续代码。defmy_methodsuper.tapdo|u|if@user&&@user.new_record?@omniauth=u.session[:session]u.session[:omniauth]=nilunless@user.new_record?endendend谁能教教我? 最佳答案 tap用于对对象执行一些操作,然后返回该对象。这听起来令人困惑,但在链接方法时很有用。示例:d

ruby - 崇高文本 3 : Ruby syntax highlighting bug

9月13日,Sublime发布了SublimeText3的第一个非测试版。我刚刚进行了升级,现在我在使用Ruby时遇到“改进的语法突出显示”问题。deffoo@bar/@bazend因此,如果我想划分实例变量,语法高亮会中断。有人知道如何解决这个问题吗?谢谢更新:This拉取请求解决了这个问题。克隆repo并将/Packages/Ruby移动到~/Library/ApplicationSupport/SublimeText3/Packages/重新启动Sublime后,语法问题已修复! 最佳答案 尝试安装BetterRuby.它解决

ruby-on-rails - headless gem : webkit_server: cannot connect to X server

我在使用Headlessgem、Xvfb和我们的ci服务器运行capybara-webkit时遇到了一些问题。我们使用此设置对我们的RubyonRails3.2应用程序进行自动集成测试和javascript测试。在测试期间它提示说webkit_server:cannotconnecttoXserver但是当我psaux|grepXvfbdeploy16020.00.1616961912pts/2S+Jul100:00/usr/bin/Xvfb:99-screen01280x1024x24-ac我看到Xvfb正在运行。如果我使用--trace运行测试,它也只显示上面的错误日志,我无法调试