Mehrere Hosts mit demselben Test unter Verwendung der Serverspezifikation testen

9

Der Abschnitt "Erweiterte Tipps" der Serverspec-Site zeigt ein Beispiel für das Testen mehrerer Hosts mit demselben Testset. Ich habe ein eigenes Beispiel erstellt ( Ссылка ), aber es gibt Probleme.

Das erste Problem besteht darin, dass die Tests beim ersten Fehler stoppen, anstatt durch das Los zu gehen und einen Zähler zu behalten. Die zweite besteht darin, dass die Fehlerausgabe nicht angibt, auf welchem ​​Host der Fehler aufgetreten ist. Was kann ich tun, um diese Probleme zu beheben und einen Abschlussbericht für alle Hosts zu erstellen?

    
Neil H Watson 21.05.2015, 12:50
quelle

1 Antwort

2

Beim ersten Problem führt ServerSpec standardmäßig alle Ihre Tests aus. Da Sie jedoch eine Schleife haben, die eine Rake -Aufgabe für jede Umgebung ausführt, führt die erste Umgebung, die einen Fehler aufweist, zu einem Fehlschlagen der Aufgabe, sodass eine Ausnahme ausgelöst wird und die restlichen Aufgaben nicht ausgeführt werden.

>

Ich habe deinen Kern gegabelt und die Rake-Aufgabe aktualisiert, um sie mit einem Anfang zu umgeben / Rettung .

%Vor%

Für das zweite Problem sieht es nicht so aus, als würde ServerSpec ausgeben, in welcher Umgebung die Tests laufen. Aber da der aktualisierte Gist zeigt, dass der Host in spec_helper.rb gesetzt wird, können wir das zu eine RSpec-Konfiguration hinzufügen , die eine after(:each) einrichtet und nur die host bei Fehlern ausgibt. Die relevanten Codeänderungen sind in einer Verzweigung des Kerns , aber im Grunde genommen " Ich brauche nur das folgende Snippet in deinem spec_helper.rb :

%Vor%     
Arthur Maltson 25.05.2015 02:57
quelle

Tags und Links