質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

1回答

3956閲覧

Railsのテストスイートの不具合

yukimas

総合スコア11

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

1クリップ

投稿2016/10/13 13:54

###Rails4.2でテストスイートが実行されない
bundle exec rake testを実行するもテストが通常通りに遂行されず
ログのみを返して終了するので教えていただけますでしょうか。
環境はcloud9、heroku、bitbucketを使用してます。
rails-tutorialで内容通りにコーディングしているつもりですが
どうもうまくいきません。

###テスト実行後のログ

RubyDep: WARNING: Your Ruby is outdated/buggy. RubyDep: WARNING: Your Ruby is: 2.3.0 (buggy). Recommendation: upgrade to 2.3.1. RubyDep: WARNING: (To disable warnings, see:http://github.com/e2/ruby_dep/wiki/Disabling-warnings ) rake aborted! test_email_addresses_should_be_unique is already defined in UserTest /usr/local/rvm/gems/ruby-2.3.0/gems/activesupport-4.2.2/lib/active_support/testing/declarative.rb:14:in `test' /home/ubuntu/workspace/sample_app/test/models/user_test.rb:68:in `<class:UserTest>' /home/ubuntu/workspace/sample_app/test/models/user_test.rb:3:in `<top (required)>' /usr/local/rvm/gems/ruby-2.3.0/gems/activesupport-4.2.2/lib/active_support/dependencies.rb:274:in `require' /usr/local/rvm/gems/ruby-2.3.0/gems/activesupport-4.2.2/lib/active_support/dependencies.rb:274:in `block in require' /usr/local/rvm/gems/ruby-2.3.0/gems/activesupport-4.2.2/lib/active_support/dependencies.rb:240:in `load_dependency' /usr/local/rvm/gems/ruby-2.3.0/gems/activesupport-4.2.2/lib/active_support/dependencies.rb:274:in `require' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-4.2.2/lib/rails/test_unit/sub_test_task.rb:114:in `block (3 levels) in define' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-4.2.2/lib/rails/test_unit/sub_test_task.rb:114:in `each' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-4.2.2/lib/rails/test_unit/sub_test_task.rb:114:in `block (2 levels) in define' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-4.2.2/lib/rails/test_unit/sub_test_task.rb:113:in `each' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-4.2.2/lib/rails/test_unit/sub_test_task.rb:113:in `block in define' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-4.2.2/lib/rails/test_unit/sub_test_task.rb:20:in `invoke_rake_task' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-4.2.2/lib/rails/test_unit/testing.rake:8:in `block in <top (required)>' /usr/local/rvm/gems/ruby-2.3.0/gems/rake-11.3.0/exe/rake:27:in `<top (required)>' /usr/local/rvm/gems/ruby-2.3.0/gems/bundler-1.13.3/lib/bundler/cli/exec.rb:74:in `load' /usr/local/rvm/gems/ruby-2.3.0/gems/bundler-1.13.3/lib/bundler/cli/exec.rb:74:in `kernel_load' /usr/local/rvm/gems/ruby-2.3.0/gems/bundler-1.13.3/lib/bundler/cli/exec.rb:27:in `run' /usr/local/rvm/gems/ruby-2.3.0/gems/bundler-1.13.3/lib/bundler/cli.rb:332:in `exec' /usr/local/rvm/gems/ruby-2.3.0/gems/bundler-1.13.3/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run' /usr/local/rvm/gems/ruby-2.3.0/gems/bundler-1.13.3/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command' /usr/local/rvm/gems/ruby-2.3.0/gems/bundler-1.13.3/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch' /usr/local/rvm/gems/ruby-2.3.0/gems/bundler-1.13.3/lib/bundler/cli.rb:20:in `dispatch' /usr/local/rvm/gems/ruby-2.3.0/gems/bundler-1.13.3/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start' /usr/local/rvm/gems/ruby-2.3.0/gems/bundler-1.13.3/lib/bundler/cli.rb:11:in `start' /usr/local/rvm/gems/ruby-2.3.0/gems/bundler-1.13.3/exe/bundle:34:in `block in <top (required)>' /usr/local/rvm/gems/ruby-2.3.0/gems/bundler-1.13.3/lib/bundler/friendly_errors.rb:100:in `with_friendly_errors' /usr/local/rvm/gems/ruby-2.3.0/gems/bundler-1.13.3/exe/bundle:26:in `<top (required)>' /usr/local/rvm/gems/ruby-2.3.0/bin/bundle:23:in `load' /usr/local/rvm/gems/ruby-2.3.0/bin/bundle:23:in `<main>' /usr/local/rvm/gems/ruby-2.3.0/bin/ruby_executable_hooks:15:in `eval' /usr/local/rvm/gems/ruby-2.3.0/bin/ruby_executable_hooks:15:in `<main>' Tasks: TOP => test:run (See full trace by running task with --trace)

###ログに記載されているuser_test.rbのファイルです

require 'test_helper' class UserTest < ActiveSupport::TestCase def setup @user = User.new(name: "Example User", email: "user@example.com", password: "foobar", password_confirmation: "foobar") end test "should be valid" do assert @user.valid? end test "name should be present" do @user.name = "" assert_not @user.valid? end test "email should be present" do @user.email = " " assert_not @user.valid? end test "name should not be too long" do @user.name = "a" * 51 assert_not @user.valid? end test "email should not be too long" do @user.email = "a" * 244 + "@example.com" assert_not @user.valid? end test "email validation should accept valid addresses" do valid_addresses = %w[user@example.com USER@foo.COM A_US-ER@foo.bar.org first.last@foo.jp alice+bob@baz.cn] valid_addresses.each do |valid_address| @user.email = valid_address assert @user.valid?, "#{valid_address.inspect} should be valid" end end test "email validation should reject invalid addresses" do invalid_addresses = %w[user@example,com user_at_foo.org user.name@example. foo@bar_baz.com foo@bar+baz.com foo@bar..com] invalid_addresses.each do |invalid_address| @user.email = invalid_address assert_not @user.valid?, "#{invalid_address.inspect} should be invalid" end end test "email addresses should be unique" do duplicate_user = @user.dup duplicate_user.email = @user.email.upcase @user.save assert_not duplicate_user.valid? end test "password should be present (nonblank)" do @user.password = @user.password_confirmation = " " * 6 assert_not @user.valid? end test "password should have a minimum length" do @user.password = @user.password_confirmation = "a" * 5 assert_not @user.valid? end test "email addresses should be unique" do duplicate_user = @user.dup duplicate_user.email = @user.email.upcase @user.save assert_not duplicate_user.valid? end test "email addresses should be saved as lower-case" do mixed_case_email = "Foo@ExAMPle.CoM" @user.email = mixed_case_email @user.save assert_equal mixed_case_email.downcase, @user.reload.email end test "password should have a minimum length" do @user.password = @user.password_confirmation = "a" * 5 assert_not @user.valid? end end

###試したこと
とりあえずワーニングの処理としてプロセスキルと
sass-railsのバージョンを5.0.6にアップデートするも
結果かわらずでした

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

エラーメッセージが以下の通りで

test_email_addresses_should_be_unique is already defined in UserTest /usr/local/rvm/gems/ruby-2.3.0/gems/activesupport-4.2.2/lib/active_support/testing/declarative.rb:14:in `test' /home/ubuntu/workspace/sample_app/test/models/user_test.rb:68:in `<class:UserTest>'

プログラムが以下のようになっています。

ruby

1# 2 51 test "email addresses should be unique" do 3 52 duplicate_user = @user.dup 4 53 duplicate_user.email = @user.email.upcase 5 54 @user.save 6 55 assert_not duplicate_user.valid? 7 56 end 8 9≪省略≫ 10 11 68 test "email addresses should be unique" do 12 69 duplicate_user = @user.dup 13 70 duplicate_user.email = @user.email.upcase 14 71 @user.save 15 72 assert_not duplicate_user.valid? 16 73 end

投稿2016/10/13 14:52

編集2016/10/13 20:50
tkmtmkt

総合スコア1800

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yukimas

2016/10/14 00:14

回答ありがとうございます。 コードがダブってたんですね・・ ほかにもあったので解消したら成功しました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問