我刚进入自动测试,我有以下问题.
如何获取自动测试以在错误上打印堆栈跟踪.如果我运行"rake spec",我会得到输出
4) Transaction should get date with poor form
Failure/Error: transaction = Transaction.build_from_email(@email)
NoMethodError:
private method `gsub' called for 112:Fixnum
# ./app/models/transaction.rb:46:in `build_from_email'
# ./spec/models/transaction_spec.rb:104
Run Code Online (Sandbox Code Playgroud)
但我得到以下自动测试
4) Transaction should get date with poor form
Failure/Error: transaction = Transaction.build_from_email(@email)
NoMethodError:
private method `gsub' called for 112:Fixnum
Run Code Online (Sandbox Code Playgroud)
只是很容易找到错误的位置.
谢谢一堆
无法在 ipad 上启动 UI 自动测试。
Error - Xamarin.UITest.XDB.Exceptions.DeviceAgentException : Failed to launch DeviceAgent ExitCode: 65
Run Code Online (Sandbox Code Playgroud)
应用程序已安装在设备上。尝试运行任何测试时安装了 DeviseAgent。
ios 版本的 ipad 10.3.3 xcode 8.3.3
appProject 中的包:
Xamarin.TestCloud.Agent v 0.20.7
Run Code Online (Sandbox Code Playgroud)
在测试项目中:
NUnit v 2.6.3
Xamarin.UITest v 2.0.10
Run Code Online (Sandbox Code Playgroud)
测试设置:
app = ConfigureApp
.iOS
.InstalledApp(somebundle)
.StartApp();
Run Code Online (Sandbox Code Playgroud)
关于配置文件也看起来一切正常。
问题是 - 测试正在另一台设备(带有 ios 9.2 的 ipad)上运行,并且前一段时间在当前设备上运行(不时)。所以这应该不是ios版本兼容性的问题。
还尝试删除文件夹“xdb”;
有任何想法吗?
我在自动测试中遇到过问题,之前我通过将ZenTest 4.1.4降级到4.1.3来解决问题.
$ ruby -v
ruby 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0]
$ rails -v
Rails 2.3.4
Run Code Online (Sandbox Code Playgroud)
目前我发现在我的Mac OS 10.6.1 Snow Leopard系统上,当我$ autotest在我的项目中运行时,没有运行任何测试,我得到了这个输出......
$ autotest
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby -I.:lib:test -rubygems -e "%w[test/unit test/test_helper.rb].each { |f| require f }" | unit_diff -u
Loaded suite -e
Started
Finished in 0.000225 seconds.
0 tests, 0 assertions, 0 failures, 0 errors
Run Code Online (Sandbox Code Playgroud)
试试control-C......
^CInterrupt a second time to quit
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby -I.:lib:test -rubygems -e "%w[test/unit test/test_helper.rb].each { |f| require f }" …Run Code Online (Sandbox Code Playgroud) 我使用autotest-notification v2.3.4和rspec v2.0.1在运行Ubuntu 12.04的机器上的rails v3.2.3项目中编写测试.在我的pages_controller_spec.rb中,我有以下代码
require 'spec_helper'
describe PagesController do
describe "GET 'contact'" do
it "should be successful" do
get 'contact'
response.should be_success
end
end
end
Run Code Online (Sandbox Code Playgroud)
当我运行命令时,rspec spec/我得到以下错误
DEPRECATION WARNING: The InstanceMethods module inside ActiveSupport::Concern will be no longer included automatically. Please define instanc\
e methods directly in RSpec::Rails::SetupAndTeardownAdapter instead. (called from <top (required)> at /home/kris/development/rails_projects/s\
ample_app/spec/controllers/pages_controller_spec.rb:3)
DEPRECATION WARNING: The InstanceMethods module inside ActiveSupport::Concern will be no longer included automatically. Please define instanc\
e methods directly in RSpec::Rails::TestUnitAssertionAdapter …Run Code Online (Sandbox Code Playgroud) 我正在寻找一种模仿慢速Redis服务器的最简单方法(从我现在调试的客户端的角度来看).
理想情况下,这将是一个DEBUG SLEEP <seconds>命令,但AFAIK没有这样的事情.
我可以使用,例如,BLPOP阻塞读取 - 但这需要一个单独的线程来解锁它...有一个更简单的方法吗?
我之前已将ZenTest添加到我的gemfile中以运行自动测试.在这种情况下,我得到以下错误四次:
saasbook@saasbook:~/Documents/github/LocalSupport$ bundle exec autotest
Invalid gemspec in [/usr/local/lib/ruby/gems/1.9.1/specifications/ZenTest-4.9.0.gemspec]: Illformed requirement ["< 2.1, >= 1.8"]
Run Code Online (Sandbox Code Playgroud)
我搜索了这个错误,并在ZenTest的github repo中找到了一些讨论:
https://github.com/seattlerb/zentest/issues/29 https://github.com/seattlerb/zentest/issues/32 https://github.com/seattlerb/zentest/issues/33
我已经遵循了一些建议,卸载并重新安装了ZenTest,但没有任何乐趣.我在ubuntu上运行ruby 1.9.2p290(2011-07-09修订版32553)[i686-linux]
我的整个应用程序都在这里:
https://github.com/tansaku/LocalSupport
所以例如你可以看看我的GemFile:
https://github.com/tansaku/LocalSupport/blob/master/Gemfile
有任何想法吗?
提前谢谢了
我有一个测试套件的一部分,运行一堆非常慢的导入器.这些测试不需要经常运行(除非导入器实际上正在处理),所以我使用Rspec标签将它们分开:http://relishapp.com/rspec/rspec-core/v/2-4 /目录/命令行/标签选项
这样做效果很好,但如果我可以设置自动测试,那么更糟糕的是忽略标记为这种方式的规格是默认的.我似乎无法找到一个明显的方法来做到这一点.有谁知道如何做到这一点?
我正在按照http://ruby.railstutorial.org/上的教程开始我的第一个rails应用程序.我完全按照教程中的说法设置了我的开发环境(我正在使用带有Lion的Macbook Pro),除了一次打嗝之外它没有任何问题.我首先编写失败的测试然后我对代码进行更改以便它们通过,我可以在浏览器中检查页面是否正常工作但由于某种原因,测试结果仍然是"红色".我有一个运行3个选项卡的终端,第一个选项卡,我有spork运行(bundle exec spork),第二个选项卡,我有rails服务器运行(rails s)和第三个选项卡,我进行所有命令行更改并运行测试(自动测试) || bundle exec rspec spec /).我必须重新启动spork,rails服务器,然后再次测试,看看它们是"绿色".
这是预期的行为吗?因为根据教程,大多数时候我应该能够看到它们变绿,而不必重新启动服务器/ spork.
编辑
这是我的spec_helper.rb文件的样子
require 'rubygems'
require 'spork'
Spork.prefork do
# Loading more in this block will cause your tests to run faster. However,
# if you change any configuration or code from libraries loaded here, you'll
# need to restart spork for it take effect.
ENV["RAILS_ENV"] ||= 'test'
require File.expand_path("../../config/environment", __FILE__)
require 'rspec/rails'
# Requires supporting files with custom matchers and macros, etc,
# in ./support/ …Run Code Online (Sandbox Code Playgroud) 我开始说
./bin/behat --suite=SuiteName --profile=profile_name
Run Code Online (Sandbox Code Playgroud)
是否有可能在FeatureContext中获取当前的behat配置文件名称,尤其是内部 BeforeSuiteScope
/**
* @BeforeSuite
*/
public static function beforeSuite(BeforeSuiteScope $scope)
{
}
Run Code Online (Sandbox Code Playgroud) 之后我的升级Rails 3.1.3和Ruby 1.9.3(通过RVM),我无法正常运行自动测试.我不知道发生了什么,但是当我打印时:
$ autotest
Run Code Online (Sandbox Code Playgroud)
它显示出奇怪的错误
loading autotest/rails_rspec2
/Users/serg/.rvm/rubies/ruby-1.9.3-head/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require': cannot load such file -- autotest/fsevent (LoadError)
from /Users/serg/.rvm/rubies/ruby-1.9.3-head/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
from /Users/serg/rails_projects_terminal/sample_app/.autotest:2:in `<top (required)>'
from /Users/serg/.rvm/gems/ruby-1.9.3-head@global/gems/ZenTest-4.6.2/lib/autotest.rb:315:in `load'
from /Users/serg/.rvm/gems/ruby-1.9.3-head@global/gems/ZenTest-4.6.2/lib/autotest.rb:315:in `block in initialize'
from /Users/serg/.rvm/gems/ruby-1.9.3-head@global/gems/ZenTest-4.6.2/lib/autotest.rb:314:in `each'
from /Users/serg/.rvm/gems/ruby-1.9.3-head@global/gems/ZenTest-4.6.2/lib/autotest.rb:314:in `initialize'
from /Users/serg/.rvm/gems/ruby-1.9.3-head/gems/rspec-core-2.8.0/lib/autotest/rspec2.rb:13:in `initialize'
from /Users/serg/.rvm/gems/ruby-1.9.3-head/gems/rspec-rails-2.8.0/lib/autotest/rails_rspec2.rb:31:in `initialize'
from /Users/serg/.rvm/gems/ruby-1.9.3-head@global/gems/ZenTest-4.6.2/lib/autotest.rb:244:in `new'
from /Users/serg/.rvm/gems/ruby-1.9.3-head@global/gems/ZenTest-4.6.2/lib/autotest.rb:244:in `run'
from /Users/serg/.rvm/gems/ruby-1.9.3-head@global/gems/ZenTest-4.6.2/bin/autotest:6:in `<top (required)>'
from /Users/serg/.rvm/gems/ruby-1.9.3-head@global/bin/autotest:19:in `load'
from /Users/serg/.rvm/gems/ruby-1.9.3-head@global/bin/autotest:19:in `<main>'
Run Code Online (Sandbox Code Playgroud)
但当我尝试:
bundle exec autotest
Run Code Online (Sandbox Code Playgroud)
有用.我该如何解决?
我的gemfile:
source 'http://rubygems.org'
gem 'rails', '3.1.3'
gem 'gravatar_image_tag'
gem 'will_paginate'
gem …Run Code Online (Sandbox Code Playgroud) 我更改了我的.autotest文件以使用基于Ruby的项目.
之后,当我想将它用于Rails时,它使用.autotest我用于Ruby项目的配置设置.
我卸载了自动测试并重新安装它没有运气.我还删除了.autotest根目录中的文件,但它无法正常工作.