login vsi company logo login vsi company logo 250x40
  • Home
  • Blog
  • Customizing Workloads: Extending the Login VSI and Login PI scripting language

Customizing Workloads: Extending the Login VSI and Login PI scripting language

Customizing Workloads: Extending the Login VSI and Login PI scripting language

When you want to customize workloads, the workload scripting language for Login VSI and Login PI already contain a lot of common pre-defined variables to help you to do so (a full list of variables can be found in our documentation). But if a situation requires functionality that isn’t available in the existing scripting language, then the workload scripting language can be easily extended with additional functionality. In this blog post I will explain how to do this.

To extend the functionality of the scripting language the following is needed:

  • An external script or program that can perform the actions required. In this example I am using an external program that sends text from a specific column in a CSV file to the application that is currently active. Scripts can also be used.
  • A basic understanding of scripting and/or the workload scripting language used by Login VSI and Login PI (though this blog focuses on Login VSI).

The magic

The way to extend the scripting language is by using VSI_ShellExecuteWait(). ShellExecuteWait simply executes an external file or program and waits until the program (associated with the file) exits.

Placing the files

To make the script or program that is executed by ShellExecuteWait easily accessible, place it in the VSIshare under _VSI_Binaries > Target. This folder will be copied to the temp directory when the Login VSI user logs on. By placing the file in the target folder there is no contention for access to the program (or script) during the test.

customizing workloads extending the login vsi and login pi scripting language target folder

Making workload changes

In the workload add VS_ShellExecuteWait("logname","path to external program or script", "command line parameters").

In my example that is:

VSI_ShellExecuteWait("ExtendExample", "%temp%\vsi\runtime\typefromcsv.exe","1 \\win-32tlo3go24m\VSIShare4\users.csv Username 1")

customizing workloads extending the login vsi and login pi scripting language workload example

The test it looks like this when running. I have enabled debugging so that the workload line currently being executed is visible. Do you want to debug Login PI workloads? This blog explains how to enable debugging for Login PI.

customizing workloads extending the login vsi and login pi scripting language workload running

The CSV file looks like this:

customizing workloads extending the login vsi and login pi scripting language csv

Conclusion

This example is a fairly simple program that reads from a CSV file and sends those keystrokes to the currently active application. I have also used the same technique to, for example, find images on the screen, automate Google Chrome and complete conditional tasks. As you can see, it’s pretty straightforward to extend the Login VSI and Login PI scripting language using external scripts or programs. This allows the scripting language to handle any task.

About the author

Dennis Geerlings started at Login VSI about 4 years ago and worked as a consultant within Login Consultants. He supported multiple customers in migration projects. Presently, Dennis is support manager and lead consultant at Login VSI. In these roles he supports customers and partners in the US and Canada, co-develops the Login VSI product, and serves as a pre-sales engineer for enterprise customers. 


Tags: How-to, Login VSI, Login PI, Workloads, Best Practices, Support

Popular Blogs

Windows Virtual Desktop - Update - December 2019

Windows Virtual Desktop Enhanced in the Latest Update

A lot has already been written about WVD in the last months. And while I had my initial concerns on this service many people are suggesting that they are willing to move to a platform like WVD in the next two years. Continue Reading
[Press Release] IGEL Expands Alliance with Login VSI; Integrates Login Enterprise into IGEL OS 11.03

[Press Release] IGEL Expands Alliance with Login VSI

Integrating Login Enterprise into IGEL OS 11.03 The combined solution enables IT organizations to leverage their IGEL infrastructure to continuously test the performance and availability of virtual and cloud workspaces. Continue Reading
Login VSI - Press Release - Login VSI Releases Login Enterprise 4.0

[Press Release] Login VSI Releases Login Enterprise 4.0

Login VSI Releases Login Enterprise 4.0 New Application Load Testing Functionality Maximizes End-User Experience Continue Reading
Login VSI and Ymor Form Partnership to Deliver Performance Improvement to Business-Critical Applications

[Press Release] Login VSI and Ymor Form Partnership to Deliver Performance Improvement to Business-Critical Applications

The partnership offers a total solution for enterprise organizations to monitor and test business-critical applications from end-to-end via VDI or in the Cloud. Ymor offers various monitoring solutions, used to test and monitor the performance of critical business chains from end-to-end. In VDI environments, Ymor can now offer the monitoring solutions of Login VSI. Continue Reading
How Using a Virtual User can Quantify the Performance of SAP and Citrix

How Using a Virtual User can Quantify the Performance of SAP and Citrix

When interacting with enterprise applications, the user experience is important. Users must be able to smoothly and efficiently interact with the application to be productive and achieve the goals of the enterprise. The applications are expected to be responsive, dependable, and consistent in their presentation. Continue Reading
Login VSI - Blog - 4 Things to Consider when Running Office 365 in the Cloud

4 Things to Consider when Running Office 365 in the Cloud

Recently a customer decided to move their entire VDI infrastructure into the cloud. The VDI environment was approximately 20,000 users. As you can imagine there are a lot of design decisions necessary to ensure the success of this migration. Continue Reading