У меня настроен rspec, установленный в моем приложении rails. Он работал нормально (мы просто экспериментируем с rspec, поэтому есть только 2 теста).RSpec Freezing
Они отлично работали. Теперь rspec замерзает, когда он собирается выполнить тест с использованием базы данных.
Я просто замораживает. Я даже не знаю, чтобы начать искать, потому что в выходе нет ошибок.
Есть ли подробный или отладочный режим для rspec или кто-то когда-либо сталкивался с этим?
Я пробовал -b, но он замерзает, прежде чем может дать ошибку.
Выход: (Rspec конфигурируется с --format документации)
[[email protected]:~] rspec
User
чем, это все. Он висит. Я должен дважды перезагрузить компьютер.
Это user_spec.rb
require 'spec_helper'
describe User do
let(:user) { User.create({
username: "teste",
email: "[email protected]",
name: "Teste",
phone: "123456789",
password: "123456",
notes: "Teste"
}) }
subject { user }
it "is invalid without a username" do
user.username = nil
is_expected.not_to be_valid
end
end
И мои spec_helper.rb
# This file is copied to spec/ when you run 'rails generate rspec:install'
ENV["RAILS_ENV"] ||= 'test'
require File.expand_path("../../config/environment", __FILE__)
require 'rspec/rails'
Dir[Rails.root.join("spec/support/**/*.rb")].each { |f| require f }
# Checks for pending migrations before tests are run.
ActiveRecord::Migration.maintain_test_schema!
RSpec.configure do |config|
config.infer_base_class_for_anonymous_controllers = false
config.order = "random"
config.color = true
config.tty = true
config.formatter = :documentation #:progress, :html, :textmate
config.expect_with :rspec do |c|
c.syntax = :expect
end
end
РЕШЕНИЕ
Оказывается, что delayed_job_active_record
камень был причиной повешение.
Я не знаю почему, но, как @Greg Malcolm, я посмотрел на log/teste.log
, и rspec был лихорадочным сразу после создания базы данных замедленных заданий и создания нового пользователя.
Я ограничил драгоценный камень только для разработки и производства окружающей среды, и это сработало!
Можете ли вы показать консольный вывод о том, как далеко вы дойдете до его замораживания, чтобы мы могли лучше понять, где происходит замораживание? В частности, мне было бы интересно узнать, успешно ли загружена среда рельсов. –
В этом проблема. Нет выхода !. У меня есть «описать пользователя» и некоторые примеры. Я настроил rspec для вывода в формате документации. Таким образом, он печатает «Пользователь», а затем зависает. – lcguida
Какая версия рельсов? Ваш тестовый db может быть устаревшим, попробуйте запустить 'rake db: test: prepare' – Anthony