exécuter Perl à partir specman
Question
Je dois appeler un script Perl à partir d'un test E que j'ai écrit. Je dois créer un fichier de script-Invoke C ini qui va créer un fichier de configuration dont j'ai besoin pour le test que je vous écris. Je veux que le test pour appeler le Perl qui se chargera du processus config ini-> C>, puis procéder à l'essai. toutes les idées?
La solution
Vous pouvez faire des appels système ou des commandes shell avec des fonctions system
ou output_from
. Cela peut être utilisé pour exécuter des commandes arbitraires, y compris les invocations de Perl. La fonction system
renvoie la valeur de retour de l'appel du shell, alors que le rendement de l'output_from
out standard (et peut-être erreur type ... vérifiez vos documents ..).
Exemples:
var ret := system("echo hello world");
imprime à l'écran fichier / log Specman
hello world
Alors que output_from
est utilisé comme:
var std_out := output_from("echo hello world");
print std_out;
et impressions:
std_out = "hello world"
Les fonctions prennent une chaîne, de sorte que vous pouvez construire les arguments en utilisant les fonctions de append()
et appendf()
.
Petit aparté: Vous pouvez parler directement à la ligne de commande de simulateur interface à l'aide simulator_command(cmd_str)
. Je l'ai utilisé celui-ci avant de parler avec VCS
simulator_command("quit");