CCRB Suite should run functional and integration tests even if unit tests fail
Reported by Chad Woolley | June 23rd, 2009 @ 08:26 PM
Here is a passing run from my local box: $ rake (in /Users/woolley/workspace/cruisecontrol.rb) cruise data root = '/Users/woolley/.cruise' /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby -I"lib:test" "/Users/woolley/.gem/ruby/1.8/gems/rake-0.8.7/lib/rake/rake_test_loader.rb" "test/unit/application_helper_test.rb" "test/unit/build_log_parser_test.rb" "test/unit/build_mailer_test.rb" "test/unit/build_serializer_test.rb" "test/unit/build_status_test.rb" "test/unit/build_test.rb" "test/unit/builder_starter_test.rb" "test/unit/builds_helper_test.rb" "test/unit/change_in_source_control_trigger_test.rb" "test/unit/command_line_test.rb" "test/unit/cruise_control/init_test.rb" "test/unit/file_lock_test.rb" "test/unit/platform_test.rb" "test/unit/plugins/build_reaper_test.rb" "test/unit/plugins/builder_status_test.rb" "test/unit/plugins/email_notifier_test.rb" "test/unit/plugins/log_publisher_test.rb" "test/unit/plugins/project_logger_test.rb" "test/unit/polling_scheduler_test.rb" "test/unit/project_blocker_test.rb" "test/unit/project_config_tracker_test.rb" "test/unit/project_test.rb" "test/unit/projects_helper_test.rb" "test/unit/projects_migration_test.rb" "test/unit/projects_test.rb" "test/unit/routing_test.rb" "test/unit/smtp_tls_test.rb" "test/unit/source_control/abstract_adapter_test.rb" "test/unit/source_control/git/log_parser_test.rb" "test/unit/source_control/git/revision_test.rb" "test/unit/source_control/git_test.rb" "test/unit/source_control/mercurial/log_parser_test.rb" "test/unit/source_control/mercurial_test.rb" "test/unit/source_control/subversion/changeset_log_parser_test.rb" "test/unit/source_control/subversion/info_parser_test.rb" "test/unit/source_control/subversion/log_parser_test.rb" "test/unit/source_control/subversion/propget_parser_test.rb" "test/unit/source_control/subversion/revision_test.rb" "test/unit/source_control/subversion/update_parser_test.rb" "test/unit/source_control/subversion_test.rb" "test/unit/source_control_test.rb" "test/unit/successful_build_trigger_test.rb" cruise data root = '/Users/woolley/.cruise' Loaded suite /Users/woolley/.gem/ruby/1.8/gems/rake-0.8.7/lib/rake/rake_test_loader Started ............................................................................................................................................................................................................................................................................................................................... Finished in 3.479373 seconds. 319 tests, 770 assertions, 0 failures, 0 errors /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby -I"lib:test" "/Users/woolley/.gem/ruby/1.8/gems/rake-0.8.7/lib/rake/rake_test_loader.rb" "test/functional/builds_controller_test.rb" "test/functional/documentation_controller_test.rb" "test/functional/projects_controller_test.rb" cruise data root = '/Users/woolley/.cruise' Loaded suite /Users/woolley/.gem/ruby/1.8/gems/rake-0.8.7/lib/rake/rake_test_loader Started ....................................... Finished in 4.23705 seconds. 39 tests, 174 assertions, 0 failures, 0 errors /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby -I"lib:test" "/Users/woolley/.gem/ruby/1.8/gems/rake-0.8.7/lib/rake/rake_test_loader.rb" "test/integration/builder_integration_test.rb" "test/integration/subversion_integration_test.rb" cruise data root = '/Users/woolley/.cruise' Loaded suite /Users/woolley/.gem/ruby/1.8/gems/rake-0.8.7/lib/rake/rake_test_loader Started ...................... Finished in 57.855504 seconds. 22 tests, 43 assertions, 0 failures, 0 errors Here is the current build on the official Thoughtworks build server which is failing because of a probable ruby 1.8.7 bug. You can see it failed on units and didn't even go on to run functional and integration:
Name: test_build(RoutingTest) Type: Error Message: NoMethodError: undefined method `[]' for # /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/../../activesupport/lib/active_support/core_ext/string/access.rb:43:in `first' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:86:in `recognized_request_for' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:33:in `assert_recognizes' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions.rb:60:in `clean_backtrace' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:31:in `assert_recognizes' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:74:in `assert_routing' ./test/unit/routing_test.rb:5:in `test_build' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/plugins/mocha-0.5.1/lib/mocha/test_case_adapter.rb:19:in `__send__' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/plugins/mocha-0.5.1/lib/mocha/test_case_adapter.rb:19:in `run' Name: test_build_artifacts(RoutingTest) Type: Error Message: NoMethodError: undefined method `[]' for # /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/../../activesupport/lib/active_support/core_ext/string/access.rb:43:in `first' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:86:in `recognized_request_for' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:33:in `assert_recognizes' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions.rb:60:in `clean_backtrace' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:31:in `assert_recognizes' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:74:in `assert_routing' ./test/unit/routing_test.rb:13:in `test_build_artifacts' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/plugins/mocha-0.5.1/lib/mocha/test_case_adapter.rb:19:in `__send__' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/plugins/mocha-0.5.1/lib/mocha/test_case_adapter.rb:19:in `run' Build Log /usr/ccrb/shared/projects/CruiseControlRB/work $ ruby -e "require 'rubygems' rescue nil; require 'rake'; load '/usr/rails/tasks/cc_build.rake'; ARGV << '--nosearch' << 'cc:build'; Rake.application.run; ARGV.clear" rm -rf ./coverage/units /usr/bin/ruby "/usr/ccrb/shared/projects/CruiseControlRB/work/vendor/plugins/rails_rcov/tasks/rails_rcov.rake" --run-rake-task=test:units --rcov-params=" -x \"^(?!(app\/models)|(lib)|(app\/helpers))\"" (in /usr/ccrb/shared/projects/CruiseControlRB/work) cruise data root = '/usr/ccrb/shared' [CruiseControl] Invoking Rake task "cruise" Found GemInstaller config file at: /usr/ccrb/shared/projects/CruiseControlRB/work/test/geminstaller.yml GemInstaller is verifying gem installation: rcov 0.8.1.2.0 Gem rcov, version 0.8.1.2.0 is already installed. [CruiseControl] Build environment: [CruiseControl] CentOS release 5 (Final) Kernel \r on an \m [CruiseControl] Linux chistdrwp01.thoughtworks.com 2.6.18-53.1.14.el5 [#1](/projects/9150/tickets/1 "Ticket #1") SMP Wed Mar 5 11:36:49 EST 2008 i686 i686 i386 GNU/Linux [CruiseControl] ruby 1.8.7 (2008-08-11 patchlevel 72) [i686-linux] [CruiseControl] RubyGems Environment: [CruiseControl] - RUBYGEMS VERSION: 1.3.1 [CruiseControl] - RUBY VERSION: 1.8.7 (2008-08-11 patchlevel 72) [i686-linux] [CruiseControl] - INSTALLATION DIRECTORY: /usr/lib/ruby/gems/1.8 [CruiseControl] - RUBY EXECUTABLE: /usr/bin/ruby [CruiseControl] - EXECUTABLE DIRECTORY: /usr/bin [CruiseControl] - RUBYGEMS PLATFORMS: [CruiseControl] - ruby [CruiseControl] - x86-linux [CruiseControl] - GEM PATHS: [CruiseControl] - /usr/lib/ruby/gems/1.8 [CruiseControl] - /home/rails/.gem/ruby/1.8 [CruiseControl] - GEM CONFIGURATION: [CruiseControl] - :update_sources => true [CruiseControl] - :verbose => true [CruiseControl] - :benchmark => false [CruiseControl] - :backtrace => false [CruiseControl] - :bulk_threshold => 1000 [CruiseControl] - :sources => ["http://gems.rubyforge.org/", "http://gems.github.com"] [CruiseControl] - REMOTE SOURCES: [CruiseControl] - http://gems.rubyforge.org/ [CruiseControl] - http://gems.github.com [CruiseControl] Local gems: [CruiseControl] activesupport (2.2.2) [CruiseControl] allison (2.0.3) [CruiseControl] Antwrap (0.7.0) [CruiseControl] archive-tar-minitar (0.5.2) [CruiseControl] builder (2.1.2) [CruiseControl] buildr (1.3.4) [CruiseControl] cgi_multipart_eof_fix (2.5.0) [CruiseControl] columnize (0.3.0) [CruiseControl] cucumber (0.1.16) [CruiseControl] daemons (1.0.10) [CruiseControl] diff-lcs (1.1.2) [CruiseControl] docter (1.1.3) [CruiseControl] fastthread (1.0.1) [CruiseControl] gem_plugin (0.2.3) [CruiseControl] geminstaller (0.5.1) [CruiseControl] haml (1.8.2) [CruiseControl] highline (1.5.0) [CruiseControl] hoe (1.11.0, 1.8.3) [CruiseControl] jdtc (0.0.1) [CruiseControl] linecache (0.43) [CruiseControl] manifest (0.0.3, 0.0.2) [CruiseControl] mongrel (1.1.5) [CruiseControl] net-sftp (2.0.2) [CruiseControl] net-ssh (2.0.11, 2.0.10) [CruiseControl] newgem (1.2.3) [CruiseControl] polyglot (0.2.4) [CruiseControl] rake (0.8.4, 0.8.3) [CruiseControl] rcov (0.8.1.2.0) [CruiseControl] RedCloth (4.1.9, 3.0.4) [CruiseControl] rjb (1.1.7, 1.1.6) [CruiseControl] rspec (1.1.12) [CruiseControl] rubigen (1.5.2) [CruiseControl] ruby-debug (0.10.3) [CruiseControl] ruby-debug-base (0.10.3) [CruiseControl] rubyforge (1.0.3, 1.0.2) [CruiseControl] rubyzip (0.9.1) [CruiseControl] spicycode-rcov (0.8.2.1) [CruiseControl] syntax (1.0.0) [CruiseControl] term-ansicolor (1.0.3) [CruiseControl] treetop (1.2.4) [CruiseControl] xml-simple (1.0.12, 1.0.11) rcov -o "/usr/ccrb/shared/projects/CruiseControlRB/work/coverage/units" -T -x "rubygems/*,rcov*" --rails -x "^(?!(app\/models)|(lib)|(app\/helpers))" -I"/usr/ccrb/shared/projects/CruiseControlRB/work/lib" -I"/usr/ccrb/shared/projects/CruiseControlRB/work/test" "/home/rails/.gem/ruby/1.8/gems/rake-0.8.4/lib/rake/rake_test_loader.rb" "test/unit/platform_test.rb" "test/unit/cruise_control/init_test.rb" "test/unit/build_log_parser_test.rb" "test/unit/command_line_test.rb" "test/unit/build_serializer_test.rb" "test/unit/source_control_test.rb" "test/unit/smtp_tls_test.rb" "test/unit/successful_build_trigger_test.rb" "test/unit/routing_test.rb" "test/unit/plugins/build_reaper_test.rb" "test/unit/plugins/builder_status_test.rb" "test/unit/plugins/log_publisher_test.rb" "test/unit/plugins/project_logger_test.rb" "test/unit/plugins/email_notifier_test.rb" "test/unit/projects_helper_test.rb" "test/unit/project_config_tracker_test.rb" "test/unit/project_test.rb" "test/unit/projects_migration_test.rb" "test/unit/project_blocker_test.rb" "test/unit/build_status_test.rb" "test/unit/build_mailer_test.rb" "test/unit/change_in_source_control_trigger_test.rb" "test/unit/build_test.rb" "test/unit/application_helper_test.rb" "test/unit/builder_starter_test.rb" "test/unit/projects_test.rb" "test/unit/source_control/subversion_test.rb" "test/unit/source_control/mercurial_test.rb" "test/unit/source_control/subversion/propget_parser_test.rb" "test/unit/source_control/subversion/log_parser_test.rb" "test/unit/source_control/subversion/update_parser_test.rb" "test/unit/source_control/subversion/revision_test.rb" "test/unit/source_control/subversion/info_parser_test.rb" "test/unit/source_control/subversion/changeset_log_parser_test.rb" "test/unit/source_control/abstract_adapter_test.rb" "test/unit/source_control/mercurial/log_parser_test.rb" "test/unit/source_control/git_test.rb" "test/unit/source_control/git/log_parser_test.rb" "test/unit/source_control/git/revision_test.rb" "test/unit/file_lock_test.rb" "test/unit/polling_scheduler_test.rb" "test/unit/builds_helper_test.rb" (in /usr/ccrb/shared/projects/CruiseControlRB/work) cruise data root = '/usr/ccrb/shared' cruise data root = '/usr/ccrb/shared' Loaded suite /usr/bin/rcov Started .............................................................................................................................................................................................................................EE................................................................................................ Finished in 3.240502 seconds. 1) Error: test_build(RoutingTest): NoMethodError: undefined method `[]' for # /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/../../activesupport/lib/active_support/core_ext/string/access.rb:43:in `first' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:86:in `recognized_request_for' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:33:in `assert_recognizes' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions.rb:60:in `clean_backtrace' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:31:in `assert_recognizes' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:74:in `assert_routing' ./test/unit/routing_test.rb:5:in `test_build' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/plugins/mocha-0.5.1/lib/mocha/test_case_adapter.rb:19:in `__send__' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/plugins/mocha-0.5.1/lib/mocha/test_case_adapter.rb:19:in `run' 2) Error: test_build_artifacts(RoutingTest): NoMethodError: undefined method `[]' for # /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/../../activesupport/lib/active_support/core_ext/string/access.rb:43:in `first' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:86:in `recognized_request_for' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:33:in `assert_recognizes' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions.rb:60:in `clean_backtrace' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:31:in `assert_recognizes' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb:74:in `assert_routing' ./test/unit/routing_test.rb:13:in `test_build_artifacts' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/plugins/mocha-0.5.1/lib/mocha/test_case_adapter.rb:19:in `__send__' /usr/ccrb/shared/projects/CruiseControlRB/work/config/../vendor/plugins/mocha-0.5.1/lib/mocha/test_case_adapter.rb:19:in `run' 319 tests, 758 assertions, 0 failures, 2 errors /usr/lib/ruby/1.8/rexml/formatters/pretty.rb:131:in `[]': no implicit conversion from nil to integer (TypeError) from /usr/lib/ruby/1.8/rexml/formatters/pretty.rb:131:in `wrap' from /usr/lib/ruby/1.8/rexml/formatters/pretty.rb:131:in `wrap' from /usr/lib/ruby/1.8/rexml/formatters/pretty.rb:90:in `write_text' from /usr/lib/ruby/1.8/rexml/formatters/default.rb:50:in `write' from /usr/lib/ruby/1.8/rexml/formatters/pretty.rb:75:in `write_element' from /usr/lib/ruby/1.8/rexml/formatters/pretty.rb:73:in `each' from /usr/lib/ruby/1.8/rexml/formatters/pretty.rb:73:in `write_element' from /usr/lib/ruby/1.8/rexml/formatters/default.rb:31:in `write' from /usr/lib/ruby/1.8/rexml/formatters/pretty.rb:75:in `write_element' from /usr/lib/ruby/1.8/rexml/formatters/pretty.rb:73:in `each' from /usr/lib/ruby/1.8/rexml/formatters/pretty.rb:73:in `write_element' from /usr/lib/ruby/1.8/rexml/formatters/default.rb:31:in `write' from /usr/lib/ruby/1.8/rexml/formatters/pretty.rb:117:in `write_document' from /usr/lib/ruby/1.8/rexml/formatters/pretty.rb:111:in `each' from /usr/lib/ruby/1.8/rexml/formatters/pretty.rb:111:in `write_document' from /usr/lib/ruby/1.8/rexml/formatters/default.rb:28:in `write' from /usr/lib/ruby/1.8/rexml/document.rb:195:in `write' from (eval):93:in `pretty' from /home/rails/.gem/ruby/1.8/gems/rcov-0.8.1.2.0/lib/rcov/report.rb:1003:in `create_file' from /home/rails/.gem/ruby/1.8/gems/rcov-0.8.1.2.0/lib/rcov/report.rb:708:in `execute' from /home/rails/.gem/ruby/1.8/gems/rcov-0.8.1.2.0/lib/rcov/report.rb:125:in `each' from /home/rails/.gem/ruby/1.8/gems/rcov-0.8.1.2.0/lib/rcov/report.rb:125:in `each_file_pair_sorted' from /home/rails/.gem/ruby/1.8/gems/rcov-0.8.1.2.0/lib/rcov/report.rb:707:in `execute' from /home/rails/.gem/ruby/1.8/gems/rcov-0.8.1.2.0/lib/rcov.rb:640:in `dump_coverage_info' from /home/rails/.gem/ruby/1.8/gems/rcov-0.8.1.2.0/lib/rcov.rb:640:in `each' from /home/rails/.gem/ruby/1.8/gems/rcov-0.8.1.2.0/lib/rcov.rb:640:in `dump_coverage_info' from /home/rails/.gem/ruby/1.8/gems/rcov-0.8.1.2.0/bin/rcov:421 from /usr/lib/ruby/1.8/test/unit.rb:278 rake aborted! Command failed with status (1): [rcov -o "/usr/ccrb/shared/projects/CruiseC...] (See full trace by running task with --trace) rake aborted! Command failed with status (1): [/usr/bin/ruby "/usr/ccrb/shared/projects/C...] (See full trace by running task with --trace) dir : /usr/ccrb/shared/projects/CruiseControlRB/work command : echo /usr/ccrb/shared/projects/CruiseControlRB/work $ ruby\ -e\ \"require\ \'rubygems\'\ rescue\ nil\;\ require\ \'rake\'\;\ load\ \'/usr/rails/tasks/cc_build.rake\'\;\ ARGV\ \<\<\ \'--nosearch\'\ \<\<\ \'cc:build\'\;\ Rake.application.run\;\ ARGV.clear\" >> /usr/ccrb/shared/projects/CruiseControlRB/build-809cb90/build.log && ruby -e "require 'rubygems' rescue nil; require 'rake'; load '/usr/rails/tasks/cc_build.rake'; ARGV << '--nosearch' << 'cc:build'; Rake.application.run; ARGV.clear" >> /usr/ccrb/shared/projects/CruiseControlRB/build-809cb90/build.log 2>&1 exitstatus: 1
No comments found
Please Sign in or create a free account to add a new ticket.
With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile ยป