Skip to content

Files

Latest commit

7f1a525 · Jun 14, 2023

History

History

LoadConfigFileEvalStats

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Jun 14, 2023
Jun 14, 2023
version: 1.0.0

applet: Apps/IxLoad/LoadConfigFileEvalStats.py

description:

   - Load an exported configuration file
   - Start test
   - Show stats expectation at runtime
   - Optional: Get capture files

keystack requirements:

   - Env yml file
   - Testcase yml file
   - Create playbook or add testcases to playbook playlist
	  
instructions:

   - Manually run test on IxLoad
   - When test configuration is satisfied, export the config file
   - Put the exported config file to /your_path/KeystackTests/Modules/LoadCore/ExportedConfigs
   - Create testcase yml files:
   - Create an env file containing the IxLoad setup IP addresses and
     login credentials
   - Create a playbook to run testcases or add a testcase to existing playbook
   
env yml file sample:
   file location: /your_path/Keystack/Tests/Envs/ixLoad_qa
   
   windowsApiServerIp: 192.168.28.10

   # Where to store all of the csv result files in Windows
   windowsResultsDir: c:\\Results

   linuxApiServerIp: 192.168.28.24

   # Leave the 2 lines as default. For your reference only.
   linuxResultsDir: /mnt/ixload-share/Results

   # http=8080.  https=8443 (https is supported starting 8.50)
   apiServerIpPort: 8443

   licenseServerIp: 192.168.28.10

   # licenseModel choices: 'Subscription Mode' or 'Perpetual Mode'
   licenseModel: Subscription Mode

   # To assign ports for testing.  Format = (cardId,portId)
   # Traffic1@Network1 are activity names.
   # To get the Activity names, got to: /ixload/test/activeTest/communityList
   communityPortList1:
       chassisIp: 192.168.28.5
       Traffic1@Network1:
          - [1,1]

   communityPortList2:
       chassisIp: 192.168.28.5
       Traffic2@Network2:
          - [1,2]

testcase yml file sample:

   file location: /keystack_path/KeystackTests/Modules/IxLoad/Testcases/http.yml

   title: HTTP

   description: Validate HTTP

   # The path must begins with /Modules or /Apps
   script: /Apps/IxLoad/Applets/LoadSavedConfigFile/LoadConfigFileEvalStats.py

   # Store exported config files in /Modules/IxLoad/ExportedConfigs
   exportedConfigFile: IxL_Http_Ipv4Ftp_vm_8.20.rxf

   # Store data-model files / param files in /Modules/IxLoad/ConfigParameters
   configParametersFile: demoConfigs.yml

    # Provide a list with dashes of paths to append to sys.path
    # For scripts to import. Must begin with either /Apps or /Modules.
    importAppLibraryPaths:
       - /Apps/IxLoad
   

Configuration Parameters file:

   file location: /keystack_path/KeystackTests/Modules/IxLoad/ConfigParameters/demoConfigs.yml
   
   # Choices of IxLoad Gateway server OS: linux or windows
   serverOs: windows

   # Which IxLoad version are you using for your test?
   # To view all the installed versions, go on a web browser and enter:
   #    http://<server ip>:8080/api/v0/applicationTypes
   ixLoadVersion: 9.30.0.331

   # Do you want to delete the session at the end of the test or if the test failed?
   deleteSession: True
   forceTakePortOwnership: True

   # API-Key: Use your user API-Key if you want added security
   apiKey: None

   # For IxLoad versions prior to 8.50 that doesn't have the rest api to download results.
   # Set to True if you want to save run time stat results to CSV files.
   saveStatsToCsvFile:  True

playbook yml file sample:

   file location: /keystack_path/KeystackTests/Playbooks/ixLoadRegression.yml
  
   ---
   stages:
       Test:
          enable: True
          runModulesInParallel: False
          abortModuleFailure: False

          modules:
            - /Modules/IxLoad:
               enable: True
               abortModuleFailure: False
               env: ixLoadDemo
               playlist:
	          - /Modules/IxLoad/Testcases/http.yml