Запитання з тегом «rspec»

RSpec - це структура, орієнтована на поведінку (BDD) для мови програмування Ruby, натхненна JBehave. Він містить власну повністю інтегровану рамку глузування на основі JMock. Рамку можна вважати мовою, що залежить від домену (DSL), і нагадує специфікацію природної мови.

6
Як стверджувати кількість елементів за допомогою Capybara з належним повідомленням про помилку?
Я знаю, що в Capybara ви можете зробити щось подібне: page.should have_css("ol li", :count => 2) Однак, якщо припустити, що сторінка має, наприклад, лише один відповідний елемент, помилка не дуже описова: 1) initial page load shows greetings Failure/Error: page.should have_css("ol li", :count => 2) expected css "ol li" to return …
86 rspec  dsl  capybara 

4
RSpec: очікуйте зміни кількох
Я хочу перевірити наявність багатьох змін у моделі під час надсилання форми в специфікації функції. Наприклад, я хочу переконатись, що ім’я користувача було змінено з X на Y, а зашифрований пароль змінено на будь-яке значення. Я знаю, що вже є кілька питань щодо цього, але я не знайшов для мене …

3
Яка різниця між темою RSpec і нехай? Коли їх слід використовувати чи ні?
http://betterspecs.org/#subject містить деяку інформацію про subjectта let. Однак я досі незрозумілий щодо різниці між ними. Крім того, публікація SO Що є аргументом проти використання раніше, нехай і предмета в тестах RSpec? сказав, що краще не використовувати ні, subjectні let. Куди мені піти? Я така розгублена.

5
Заглушення аутентифікації в специфікації запиту
Як ви пишете специфікацію запиту, як ви встановлюєте сеанси та / або методи контролера заглушки? Я намагаюся вимкнути автентифікацію в своїх тестах інтеграції - rspec / request Ось приклад тесту require File.dirname(__FILE__) + '/../spec_helper' require File.dirname(__FILE__) + '/authentication_helpers' describe "Messages" do include AuthenticationHelpers describe "GET admin/messages" do before(:each) do @current_user …

3
Як протестувати створення винятків у Rails / RSpec?
Існує такий код: def index @car_types = car_brand.car_types end def car_brand CarBrand.find(params[:car_brand_id]) rescue ActiveRecord::RecordNotFound raise Errors::CarBrandNotFound.new end Я хочу перевірити це через RSpec. Мій код: it 'raises CarBrandNotFound exception' do get :index, car_brand_id: 0 expect(response).to raise_error(Errors::CarBrandNotFound) end CarBrand з ідентифікатором, рівним 0, не існує, тому мій код контролера викликає Errors …


6
Як підготувати тестову базу даних для тестування Rails rspec без запуску специфікацій граблів?
Після значного усунення несправностей я зрозумів, що мені потрібно запустити rake specодин раз (я можу перервати за допомогою control-c), перш ніж я зможу запустити rspec безпосередньо (наприклад, на підмножині наших специфікацій). Ми використовуємо Rails 3.0.7 і RSpec 2.5.0. Очевидно, що rake виконує деякі важливі завдання / код налаштування бази даних …

8
Як змусити Capybara перевірити видимість після запуску певної JS?
Після завантаження сторінки у мене є код, який запускається, приховує та показує різні елементи на основі даних, повернутих xhr. Мій інтеграційний тест виглядає приблизно так: it "should not show the blah" do page.find('#blah').visible?.should be_true end Коли я вручну переходжу на сторінку в контексті запуску цього тесту, #blah не видно, як …

5
Rspec 3 як перевірити флеш-повідомлення
Я хочу перевірити дію контролера та наявність флеш-повідомлень за допомогою rspec. дія : def create user = Users::User.find_by_email(params[:email]) if user user.send_reset_password_instructions flash[:success] = "Reset password instructions have been sent to #{user.email}." else flash[:alert] = "Can't find user with this email: #{params[:email]}" end redirect_to root_path end специфікація : describe "#create" do …

5
Як визначити масив / хеш у factory_bot?
Я намагаюся написати тест, який імітує деякі повернені значення із служби REST Dropbox, що повертає мені дані в масив із вкладеним хешем. У мене виникають проблеми з тим, як зрозуміти, як кодувати мою Фабрику, оскільки результат повернення - це масив із внутрішнім символом has. Що тут піде? Factory.define :dropbox_hash do …

1
Ruby Rspec: Тестування змінних екземпляра без додавання доступу до джерела
Я намагаюся перевірити наступний метод: def unprocess_move(board, move) if move[0].instance_of?(Array) multi_move = @multi_move.pop(2).reverse multi_move.each do |single_move| unapply_move(board, single_move) end else board = unapply_move(board, move) end board end де я хочу встановити стан для @multi_move, але я не хочу додавати аксесуар лише для тестування. Чи можна це зробити без аксесуара? Дякую.

4
рейки rspec перед усіма проти перед кожним
competition_entry_spec.rb require 'spec_helper' describe ContestEntry do before(:all) do @admission=Factory(:project_admission) @project=Factory(:project_started, :project_type => @admission.project_type) @creative=Factory(:approved_creative, :creative_category => @admission.creative_category) @contest_entry=Factory(:contest_entry, :design_file_name => 'bla bla bla', :owner => @creative, :project => @project) end context 'non-specific tests' do subject { @contest_entry } it { should belong_to(:owner).class_name('User') } it { should belong_to(:project) } it { …

5
Як отримати друк Rails.logger на консоль / stdout під час запуску rspec?
Те саме, що і назва: Як отримати Rails.loggerдрук на консоль / stdout під час запуску rspec? Напр. Rails.logger.info "I WANT this to go to console/stdout when rspec is running" puts "Like how the puts function works" Я все ще хочу Rails.loggerпіти log/test.logтеж.

9
Заводська дівчина, яка обходить мою перевірку моделі
Я використовую Factory Girl для створення двох екземплярів у своїй тесті моделі / одиниці для групи. Я тестую модель, щоб перевірити, що виклик .current повертає лише "поточні" групи відповідно до атрибуту закінчення, як зазначено нижче ... describe ".current" do let!(:current_group) { FactoryGirl.create(:group, :expiry => Time.now + 1.week) } let!(:expired_group) { …

6
Запуск налагодження ruby ​​у rspec?
Я намагаюся запустити налагоджувач Ruby в одній зі своїх специфікацій: describe User do it "should be valid" do debugger User.new.should be_valid end end Однак, коли я запускаю rspec, я отримую: debugger statement ignored, use -d or --debug option to enable debugging Я спробував наступне: rake spec --debug rake spec --debug …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.