2016-12-13 7 views
0

Ich versuche, einen Befehl remote über Robot Framework auszuführen, die durch Roboter Rahmen versagt und mir den falschen Exit-Status von 13.Roboter-Framework-Exit-Status eines Befehls ist falsch?

geben Aber wenn wir dies manuell beenden Status TTman.sh laufen 112 ist eigentlich ist passieren (Nicht die Standard-Rückkehrcodes).

mache ich hier etwas falsch?

enter image description here

+0

Welcher Befehl gibt den falschen Exit-Status? –

+0

@BryanOakley 'TTman.sh' wenn manuell ausgeführt wird, gibt' 112' als Rückkehrcode, aber 'robotframework' gibt mir immer' 13' –

Antwort

1

Sie sind nicht die Remote-Code des Remote-Befehl bekommen, in der Tat die RC 13 Sie werden aus dem Lauf erhalten wird höchstwahrscheinlich aus dem Robot Framework - auf Lauf Abschluss seiner RC ist die Anzahl der fehlgeschlagenen Fälle . I.e. 13 Fälle sollten versagt haben, als Sie das beobachtet haben.

Um den Rückkehrcode Ihres Befehls zu erhalten, sind einige Änderungen in dem Fall erforderlich; Dies ist, wie die halb letzte Zeile sollte wie folgt aussehen, mit folgenden Erläuterungen:

${rc}= Execute Command your_command_from_the_question &>/dev/null; echo $? 

Zuerst werden alle die Ausgabe Ihres Befehls (stdout & stderr) auf/dev/null umgeleitet wird - um es nicht zurück. Dann wird die spezielle Variable $? ausgedruckt - sie enthält den RC des zuletzt ausgeführten Befehls (und ist in den meisten * sh-Varianten wie bash verfügbar).

Schließlich ist dieser Wert in der ${rc} robotframework Variable gespeichert, und Sie können, was Sie brauchen, weitere Prüfungen durchführen, weiter in diesem Fall.

Dieser Ansatz hat einen Nachteil: Da stderr ausgeblendet ist, können Sie keine Fehler erkennen, die beim Ausführen des Befehls auftreten. Aber wenn nicht, dann würden sie mit dem RC verschachtelt werden, was eine weitere Verarbeitung des var erforderlich gemacht hätte, um den gewünschten Wert zu erhalten. Wenn Sie es brauchen (die stderr-Ausgabe bei Fehlern), ändern Sie es entsprechend.

P.S. Fügen Sie keine Screenshots einer Quelle in einer Frage hinzu, sie ist viel weniger brauchbar als eine Textversion.

Verwandte Themen