2016-03-01 2 views
0

Je suis en train de changer un test enregistré RFT pour exécuter à partir de la ligne de commande. Il fonctionne correctement, mais les tests d'origine ouvrent certaines boîtes de dialogue. Je ne veux pas faire de grands changements au code original, car il a été développé par d'autres dans mon équipe.Comment identifier si Rational Functional Tester est exécuté à partir de la ligne de commande?

Je voudrais mettre un test dans le code java et ouvrir la boîte de dialogue si elle est exécutée à partir de l'IDE eclipse modifié. Que devrais-je tester?

Répondre

1

Il n'existe aucune API explicite que nous puissions utiliser pour déterminer si elle est lancée depuis IDE/CLI. Mais nous pourrions tout simplement faire:

Dans l'EDI, Fenêtre-> Préférences-> Java-> Installée JRE, sélectionnez la valeur par défaut qui est généralement JRE jdk livré avec RFT. Cliquez sur Modifier et nous pouvons ajouter à arguments par défaut VM-Didelaunch = true

Ensuite dans le script où vous voulez vérifier si le lancement est de nous pouvons utiliser ide

if(Boolean.getBoolean("idelaunch")) 
    { 
     //do something for ide execution 
    } 

Ce qui précède être vrai lorsque le script est lancé à partir de l'IDE. Si vous exécutez de la CLI, alors il serait faux car il ne se définit pas, mais de toute façon vous pouvez mettre à false explicitement

java -Didelaunch=false -jar rational_ft.jar -datastore <datastore> -playback <scriptname> 

Ou nous pourrions définir cette variable dans la ligne de commande dire -Dclilaunch = true , comme suit

java -Dclilaunch=true -jar rational_ft.jar -datastore <datastore> -playback <scriptname> 

et vérifiez comme suit

if(Boolean.getBoolean("clilaunch")) 
    { 
     //do something for cmdline execution. 
    } 

dans le script pour déterminer si lancé à partir Commandline