LogoLogo
qoitech.com
  • Welcome
  • Otii PRODUCT SUITE
    • Overview
      • What’s included
    • Otii hardware
      • Otii Arc Pro
      • Otii Ace Pro
    • Otii software
      • Otii 3 Desktop App
      • Otii Toolbox
        • Otii Battery Toolbox [BT]
        • Otii Automation Toolbox [AT]
  • Otii SETUP
    • Connecting Otii hardware
      • Otii hardware overview
        • Otii Arc Pro overview
        • Otii Ace Pro overview
      • Wiring up
        • Expansion Port
        • Measuring DUT
        • Measuring a subsystem
        • External power source
        • Capture UART logs
    • Installing Otii software
      • Windows 10/11 setup
      • macOS setup
      • Ubuntu setup
      • Raspberry Pi setup
    • Getting started
      • Account & licensing
        • Activation & Licensing
        • Managing Licenses
      • User interface overview
        • Main window layout
        • Keyboard navigation
      • Support resources
  • Otii 3
    • Settings overview
    • Working with projects
      • Project storage
      • Create a new project
      • Save & open a project
      • Import an Otii 2.0 project
      • Export recordings as CSV
    • Control
      • Otii Arc/Ace setup
      • General settings
      • Channels
      • UART
      • Firmware management
      • Calibration
    • Recordings
      • Recording management
      • Recording tools
      • Recording viewers
        • Analog
        • Digital
        • Log
    • Measurements
    • Battery life estimator
    • Otii Battery Toolbox
      • Battery emulation
      • Battery profiler
        • Getting started with battery profiling
      • Battery validation
      • Battery Model Parameters
    • Otii Automation Toolbox
      • Otii TCP Server
      • Otii 3 Desktop App
      • Otii Server
      • User management
    • Additional features
      • User management
      • Show monitor
      • Notifications
    • Online account manager
  • Advanced guides
    • Python scripting
    • C# scripting
    • Jenkins integration
    • Using a license pool
  • HELP & FAQ
    • FAQ
      • Otii Arc Pro
      • Otii Ace Pro
    • Revision history
  • Legal information
    • Product safety
    • Liability disclaimer
Powered by GitBook
On this page
  • Create a shared account in the Qoitech User Management
  • Prepare automation computers
  • Setting up the test code

Was this helpful?

Export as PDF
  1. Advanced guides

Using a license pool

PreviousJenkins integrationNextFAQ

Last updated 1 day ago

Was this helpful?

You can easily setup a pool of licenses that are automatically shared between a group of test automation computers.

Create a shared account in the Qoitech User Management

In the you should set up an account that will be shared between the automation computers. You then add any number of automation licenses to this account, either by moving them from another account, or by purchasing new ones.

The credentials to this account should be stored in a JSON-file with the following format:

{
    "username": "SHARED ACCOUNT NAME",
    "password": "SHARED ACCOUNT PASSWORD"
}

Prepare automation computers

On each automation computer you need:

  • (either Otii 3 Desktop or Otii Server)

  • A copy of the credential file mentioned above

Setting up the test code

Since the license pool typically has fewer licenses than there are automation servers, you need to set up the code to wait for a license before running a test.

  • You need to specify the location for the JSON-file with the shared credentials

  • You need to specify how long the test script should wait to get a license from the license pool

from otii_tcp_client import otii_client

CREDENTIALS = './shared_credentials.json'
GET_LICENSE_TIMEOUT = 20 # Seconds

def my_test(otii: otii_client.OtiiClient) -> None:
    # Run test...

def main() -> None:
    client = otii_client.OtiiClient()
    with client.connect(credentials=CREDENTAILS, try_for_seconds=GET_LICENSE_TIMEOUT) as otii:
        my_test(otii)
        
if __name__ == '__main__':
    main()

The client.connect method will automatically try to login to the license server and reserve a license. If it fails to reserve a license within the time specified it will throw an exception.

After the test is run, the license will be returned, and the client will be logged out.

User Management
Otii 3 running
Otii TCP client for Python