Я создал несколько плагинов Redmine 3, и теперь я хочу закодировать тесты, чтобы обеспечить лучшую стабильность, если это возможно.Как создать функциональные тесты для плагина Redmine 3
Но теперь я не могу создать что-либо, что работает, я попытался посмотреть другие тесты плагина, и я не могу воспроизвести все, чтобы работать в любом случае.
Вы, ребята, можете дать мне простой пример холста, как продолжить?
Я на самом деле создал Redmine/плагины/redmine_timebank/тест/функционал/timebank_helper_test.rb , содержащий это:
require 'redmine'
require 'versions_controller'
class TimebankHelperTest < ActionController::TestCase
fixtures :projects,
:issues,
:issue_statuses,
:versions,
:trackers,
:projects_trackers,
:issue_categories,
:time_entries
def setup
@controller = VersionsController.new
@request = ActionController::TestRequest.new
@response = ActionController::TestResponse.new
User.current = User.where(:admin => true).first
@request.session[:user_id] = User.current.id
@project = Project.find(1)
end
def test_timebank_table
puts "AWWWWWWWWWWWWWWWWWWWW YEAHHHHHHHHHHHHHHHHHHHHH !"
end
end
Но когда я выполняю команду:
RAILS_ENV=test bin/rake redmine:plugins:test --trace
я получаю эти ошибки:
** Execute redmine:plugins:test:functionals
/usr/bin/ruby2.3 -I"lib:test" "/usr/lib/ruby/vendor_ruby/rake/rake_test_loader.rb" "plugins/*/test/functional/**/*_test.rb"
/usr/share/redmine/lib/redmine/core_ext/active_record.rb:18:in `<top (required)>': uninitialized constant ActiveModel (NameError)
from /usr/share/redmine/lib/redmine/core_ext.rb:1:in `require'
from /usr/share/redmine/lib/redmine/core_ext.rb:1:in `block in <top (required)>'
from /usr/share/redmine/lib/redmine/core_ext.rb:1:in `each'
from /usr/share/redmine/lib/redmine/core_ext.rb:1:in `<top (required)>'
from /usr/share/redmine/lib/redmine.rb:18:in `require'
from /usr/share/redmine/lib/redmine.rb:18:in `<top (required)>'
from /usr/share/redmine/plugins/redmine_timebank/test/functional/timebank_helper_test.rb:1:in `require'
from /usr/share/redmine/plugins/redmine_timebank/test/functional/timebank_helper_test.rb:1:in `<top (required)>'
from /usr/lib/ruby/vendor_ruby/rake/rake_test_loader.rb:10:in `require'
from /usr/lib/ruby/vendor_ruby/rake/rake_test_loader.rb:10:in `block (2 levels) in <main>'
from /usr/lib/ruby/vendor_ruby/rake/rake_test_loader.rb:9:in `each'
from /usr/lib/ruby/vendor_ruby/rake/rake_test_loader.rb:9:in `block in <main>'
from /usr/lib/ruby/vendor_ruby/rake/rake_test_loader.rb:4:in `select'
from /usr/lib/ruby/vendor_ruby/rake/rake_test_loader.rb:4:in `<main>'
rake aborted!
Видение uninitialized constant ActiveModel (NameError)
заставляю меня думать, что мне нужно больше зависимостей, но мне сложно, что мне просто нужно, чтобы redmine импортировал все остальное.
Другие плагины кажется импортировать некоторые вещи, как и в их тест/test_helper.rb:
require File.expand_path(File.dirname(__FILE__) + '/../../../test/test_helper')
И эта линия в каждый файл тестирования:
require File.dirname(__FILE__) + '/../test_helper'
тест Rake говорит, что ни один из них не импортируя файлы могут быть найдены. Такие как:
/usr/share/redmine/plugins/redmine_timebank/test/test_helper.rb:1:in `require': cannot load such file -- /usr/share/redmine/test/test_helper (LoadError)
Какой материал мне нужно импортировать в мой функциональный тест, чтобы заставить его работать?
Это test/test_helper
еще существует? Где я могу найти его ?
Спасибо вам большое и у вас отличный день!
ли вы работать базовые тесты с успехом? RAILS_ENV = тест тестового пакета exec rake. Затем вы можете скопировать основные тесты, чтобы помочь вам написать свои собственные. – Nanego