2017-02-07 3 views
1

Je suis en train de définir la variable d'environnement à l'aide AOMQTP 11: charge variable d'environnement à l'aide AOM

Set objFSO = CreateObject("Scripting.FileSystemObject") 
curDir = objFSO.GetParentFolderName(WScript.ScriptFullName) & "\" 
Set qtApp = CreateObject("QuickTest.Application") 
If qtApp.Launched <> True Then 
    With qtApp 
     .Launch 
     .Visible = True 
     .Options.Run.RunMode = "Fast" 
     .Options.Run.ViewResults = False 
     .Open "C:\_Work\MAIN\TestDriver", False 

     Set qtTest = .Test 
     With qtTest 
      .Settings.Run.OnError = "NextStep" 
      .Settings.Resources.Libraries.RemoveAll 
      .Environment.LoadFromFile "C:\_Work\MAIN\Configuration\Test2.xml" 
      .Run 
     End With 
    End With 
End If 

Dans le script QTP, j'utilise des variables d'environnement définies par l'utilisateur (tel que défini dans Test2.xml), mais il doesn ne fonctionne pas car le fichier n'a pas été chargé. J'ai aussi vérifié les paramètres et il n'y a pas de VE définis par l'utilisateur.

Répondre

0
Dim App 'As Application 
Set App = CreateObject("QuickTest.Application") 
App.Launch 
App.Visible = True 
App.Open "C:\Automation\OracleEBS", False 
App.Test.Settings.Launchers("Java").Active = False 
App.Test.Settings.Launchers("Java").CommandLine = "" 
App.Test.Settings.Launchers("Java").WorkingDirectory = "" 
App.Test.Settings.Launchers("Oracle").Active = False 
App.Test.Settings.Launchers("Oracle").Address = "" 
App.Test.Settings.Launchers("Oracle").AutoLogin = False 
App.Test.Settings.Launchers("Oracle").User = "" 
App.Test.Settings.Launchers("Oracle").Password = "" 
App.Test.Settings.Launchers("Oracle").LogoutOnExit = False 
App.Test.Settings.Launchers("Oracle").CloseOnExit = False 
App.Test.Settings.Launchers("Web").Active = True 
App.Test.Settings.Launchers("Web").Browser = "CHROME" 
App.Test.Settings.Launchers("Web").Address = "http://newtours.demoaut.com " 
App.Test.Settings.Launchers("Web").CloseOnExit = True 
App.Test.Settings.Launchers("Windows Applications").Active = True 
App.Test.Settings.Launchers("Windows Applications").Applications.RemoveAll 
App.Test.Settings.Launchers("Windows Applications").RecordOnQTDescendants = True 
App.Test.Settings.Launchers("Windows Applications").RecordOnExplorerDescendants = True 
App.Test.Settings.Launchers("Windows Applications").RecordOnSpecifiedApplications = True 
App.Test.Settings.Run.IterationMode = "rngAll" 
App.Test.Settings.Run.StartIteration = 1 
App.Test.Settings.Run.EndIteration = 1 
App.Test.Settings.Run.ObjectSyncTimeOut = 20000 
App.Test.Settings.Run.DisableSmartIdentification = False 
App.Test.Settings.Run.OnError = "Dialog" 
App.Test.Settings.Resources.DataTablePath = "<Default>" 
App.Test.Settings.Resources.Libraries.RemoveAll 
App.Test.Settings.Resources.Libraries.Add("C:\UFTAutomation\function_Libraray\FL.txt") 
App.Test.Environment.LoadFromFile "C:\Users\uftuser01\Desktop\env.xml" 
App.Test.Settings.Web.BrowserNavigationTimeout = 60000 
App.Test.Settings.Web.ActiveScreenAccess.UserName = "" 
App.Test.Settings.Web.ActiveScreenAccess.Password = "" 
App.Test.Settings.Recovery.Enabled = True 
App.Test.Settings.Recovery.SetActivationMode "OnError" 
App.Test.Settings.Recovery.Add "C:\tmp\FRecovery.qrs", "First Recovery Scenario", 1 
App.Test.Settings.Recovery.Item(1).Enabled = True 
App.Test.Settings.Java.EditSet.KeyPressed = True 
App.Test.Settings.Java.EditSet.KeyTyped = True 
App.Test.Settings.Java.EditSet.KeyReleased = True 
App.Test.Settings.Java.EditSet.InputMethod = False 
App.Test.Settings.Java.EditSet.FocusLost = False 
App.Test.Settings.Java.EditSet.JavaAPI = False 
App.Test.Settings.Java.EditSet.JavaAPICharactersToExclude = "\t\n\r" 
App.Test.Settings.Java.DeviceReplay.Click = False 
App.Test.Settings.Java.DeviceReplay.DoubleClick = False 
App.Test.Settings.Java.DeviceReplay.Type = False 
App.Test.Settings.Java.DeviceReplay.DragDrop = False 
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 
' System Local Monitoring settings 
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 
App.Test.Settings.LocalSystemMonitor.Enable = false 
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 
' Log Tracking settings 
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 
With App.Test.Settings.LogTracking 
    .IncludeInResults = False 
    .Port = 18081 
    .IP = "127.0.0.1" 
    .MinTriggerLevel = "ERROR" 
    .EnableAutoConfig = False 
    .RecoverConfigAfterRun = False 
    .ConfigFile = "" 
    .MinConfigLevel = "WARN" 
End With 
+0

Comment l'attacher au test? Par exemple, C: \ _ Work \ MAIN \ TestDriver –

+0

Lemme mettre à jour ma réponse, – Barney

+0

OK. La réponse actuelle mise à jour est juste en train de la configurer (j'ai également obtenu un script similaire en utilisant le script de génération de QTP). Mais le problème est que je suis incapable de joindre le fichier env au test dit (dans lequel j'essaie d'utiliser les vars env) –

2

Je ne sais pas si elle est un bug de UFT ou peut-être nous manque quelque chose, mais Environment.LoadFromFile du fichier .vbs ne fonctionne pas. Pour l'instant, la solution de contournement consiste à charger le fichier de variable d'environnement dans votre script de test UFT - TestDriver.

Mettez ce code en haut de votre code.

'Check if an External Environment file is loaded and if not, load it. 
Dim fileName 
fileName = Environment.ExternalFileName 
If (fileName = "") Then 
    Environment.LoadFromFile("C:\_Work\MAIN\Configuration\Test2.xml") 
End If 
Msgbox Environment.Value("Your_Variable_Name") 
... 
'your rest of the code 

Si vous ne souhaitez pas utiliser cet itinéraire, contactez HP.

+0

C'est ce que je pensais. 'Quelque chose ne va pas avec' Environment.LoadFromFile' via AOM. Bien que votre solution de contournement soit bonne, elle ne répondra pas à mes besoins. Je dois spécifier différents fichiers EV basés sur l'environnement (que je définirais dans le fichier VBS externe). Il doit donc y avoir un moyen par lequel le script QTP peut comprendre l'environnement au début –

+0

Faites sens. Alors, comment vous exécutez votre script à chaque fois? Utiliser VBScript? – ManishChristian

+0

Oui. Avant de lancer QTP, je dois faire une configuration que je prends en charge en utilisant une combinaison de fichiers VBS et BAT. Essayait de rendre les variables d'environnement dynamiques (avant le début du test) ... mais maintenant je pense que je vais devoir faire une solution de contournement –