veuillez indiquer comment désactiver l'une des méthodes de test ci-dessous à l'aide de RSpec. J'utilise des combinaisons Selenuim WebDriver + RSpec pour exécuter des tests.
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
Vous pouvez utiliser pending()
ou remplacer it
par xit
ou encapsuler l'assertion dans le bloc en attente pour l'implémentation d'attente:
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
Une autre façon de sauter les tests:
# 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
source: documentation rspec 3.4
Voici une solution alternative pour ignorer (ignorer) la méthode de test ci-dessus (disons, Test01
) à partir d'un exemple de script.
describe 'Automation System' do
# some code here
it 'Test01' do
skip "is skipped" do
###CODE###
end
end
it 'Test02' do
###CODE###
end
end
Il existe un certain nombre d'alternatives pour cela. Le marquant principalement comme pending
ou skipped
et il y a une différence subtile entre eux. À partir des documents
Un exemple peut être marqué comme ignoré, dans lequel il n'est pas exécuté, ou en attente dans lequel il est exécuté, mais l'échec n'entraînera pas une défaillance de l'ensemble de la suite.
Consultez les documents ici:
En attente et ignorer sont agréables, mais j'ai toujours utilisé cela pour des blocs de description/contexte plus importants que je devais ignorer/ignorer.
describe Foo do
describe '#bar' do
it 'should do something' do
...
end
it 'should do something else' do
...
end
end
end if false
Il existe deux façons d'éviter qu'un bloc de code spécifique ne soit exécuté pendant le test.
Exemple: utiliser xit à la place de celui-ci.
it "redirects to the index page on success" do
visit "/events"
end
Remplacez le bloc de code ci-dessus par ci-dessous.
xit "redirects to the index page on success" do #Adding x before it will skip this test.
visit "/event"
end
Deuxième façon: en appelant en attente à l'intérieur du bloc. Exemple:
it "should redirects to the index page on success" do
pending #this will be skipped
visit "/events"
end