Подтвердить что ты не робот

Как игнорировать или пропустить метод тестирования с помощью RSpec?

просьба указать, как отключить один из нижеперечисленных методов тестирования с помощью RSpec. Я использую комбинации Selenuim WebDriver + RSpec для запуска тестов.

require 'rspec'
require 'selenium-webdriver'

describe 'Automation System' do

  before(:each) do    
    ###
  end

  after(:each) do
    @driver.quit
  end

  it 'Test01' do
      #positive test case
  end

  it 'Test02' do
      #negative test case
  end    
end
4b9b3361

Ответ 1

Вы можете использовать pending() или изменить it на xit или обернуть утверждение в ожидающем блоке для выполнения ожидания:

describe 'Automation System' do

  # some code here

  it 'Test01' do
     pending("is implemented but waiting")
  end

  it 'Test02' do
     # or without message
     pending
  end

  pending do
    "string".reverse.should == "gnirts"
  end

  xit 'Test03' do
     true.should be(true)
  end    
end

Ответ 2

Другой способ пропустить тесты:

# feature test
scenario 'having js driver enabled', skip: true do
  expect(page).to have_content 'a very slow test'
end

# controller spec
it 'renders a view very slow', skip: true do
  expect(response).to be_very_slow
end

источник: документация rspec 3.4

Ответ 3

Вот альтернативное решение для игнорирования (пропустить) вышеупомянутый тестовый метод (скажем, Test01) из образца script.

describe 'Automation System' do

  # some code here

  it 'Test01' do
     skip "is skipped" do
     ###CODE###
     end
  end

  it 'Test02' do
     ###CODE###         
  end    
end

Ответ 4

Есть несколько альтернатив для этого. В основном, помечая его как pending или skipped, и между ними есть небольшая разница. Из документов

Пример может быть помечен как пропущенный, в котором он не выполнен, или в состоянии ожидания, в котором он выполняется, но сбой не приведет к отказу всего пакета.

Сошлитесь на документы здесь:

Ответ 5

Ожидание и пропустить приятно, но я всегда использовал это для более крупных блоков описания/контекста, которые мне нужно было игнорировать/пропускать.

describe Foo do
  describe '#bar' do
    it 'should do something' do
      ...
    end

    it 'should do something else' do
      ...
    end
  end
end if false

Ответ 6

Существует два способа пропускать определенный блок кода во время тестирования.

Пример: использование xit вместо него.

  it "redirects to the index page on success" do
    visit "/events"
  end

Измените приведенный выше код кода ниже.

xit "redirects to the index page on success" do #Adding x before it will skip this test.
    visit "/event"
end

Второй способ: вызов в ожидании внутри блока. Пример:

 it "should redirects to the index page on success" do 
  pending                             #this will be skipped
    visit "/events" 
end