2012-09-25 3 views
1

J'essaye d'obtenir que le gardien saute certains tests (ceux qui nécessitent du sélénium pour fonctionner). J'ai ajouté une balise browser_required et l'exécution de rspec avec "--tag ~ browser_required" les filtre.Sauter des tests rspec spécifiques en garde

Cependant, je ne peux pas obtenir la garde de ne pas les exécuter, je me suis fixé: cli => « --tag ~ browser_required » dans guardfile. Ceci est mon dossier complet de garde http://pastebin.com/pGuWAQm8

Répondre

1

Dans votre fond il ne dispose de deux blocs rspec (une avec et l'autre sans cli). Peut-être que supprimer le second fera au moins fonctionner.

+0

que c'est, merci beaucoup :) – Dabrorius

0

Vérifiez ma config: https://github.com/lucassus/locomotive/blob/master/Guardfile Vous pouvez passer des arguments cli pour commander rspec et en utilisant --filter options pourrait rejeter certaines spécifications

guard 'rspec', :version => 2, :cli => "--drb --color --tag ~slow:true" {}

Dans votre exemple, vous pouvez utiliser --tag ~js:true

0

L'option cli est obsolète dans Rspec 3. Utilisez plutôt cmd. Par exemple:

guard :rspec, cmd: "bundle exec rspec --color --tag ~speed:slow", failed_mode: :focus do 
    require "guard/rspec/dsl" 
    dsl = Guard::RSpec::Dsl.new(self) 

    # RSpec files 
    rspec = dsl.rspec 
    watch(rspec.spec_helper) { rspec.spec_dir } 
    watch(rspec.spec_support) { rspec.spec_dir } 
    watch(rspec.spec_files) 

    watch(%r{\Aapp/(.+)\.rb\z}) { |m| "spec/#{m[1]}_spec.rb" } 
end 

En savoir plus sur les balises Rspec here