Software developers: Need to validate/certify your apps on Citrix XenApp?

It’s not as hard as it sounds, even for developers without Citrix experience. Jo Harder explains how to do it.

Most software developers spend their days with their heads down writing code related to bug fixes and enhancements; it’s uncommon for them to fully understand why multi-user functionality and non-local profiles are necessary for Citrix XenApp. Yet, without an in-depth knowledge of Citrix, they are often tasked with ensuring that their application will work in a Citrix environment. A technical dilemma!

This article will explain how software developers can validate and certify applications in a Citrix environment without learning what StoreFront does or how NetScaler works.

Easy Azure setup

Through Azure, Citrix offers a template named XenApp Trial, which is a fully-functional XenApp environment. Step-by-step instructions can be found at

Once the environment is set up, applications can be installed and tested. Two XenApp servers are allocated in this trial environment:

  • VDI: Virtualized desktop (1:many) based on a server operating system (not a XenDesktop VDI (1:1) desktop based on a workstation operating system).
  • VDA: Virtualized applications (1:many) based on a server operating system.

The callout to the VDI server description is to ensure that developers are aware that a server operating system is in use and that multiple users may access that same server. When testing application functionality, XenDesktop VDI should always work the same as a physical workstation—after all, it’s a 1:1 setup based on a workstation operating system. However, a XenApp VDI configuration may not work the same as a physical workstation, due to either the 1:many functionality and/or the server operating system. Note that there is no instance of XenDesktop VDI in the pre-configured trial environment, though it could be added if desired.

Both the XenApp VDI and VDA configurations should be tested because it is possible that the application will function on a virtualized desktop but not as a virtualized application.

From a developer’s standpoint, there are a few extra steps that should be undertaken:

  • Additional user accounts should be created in Active Directory, and these accounts should be assigned to the appropriate applications or desktop. Set up one or more accounts for VDI only and one or more accounts for VDA only, as well as one or more accounts for both.
  • Roaming profiles should be configured via GPOs in order to test whether any profile-related items function correctly. Here is information about how to configure roaming profiles:
  • Via the Studio console on the Controller server, it will be necessary to configure the wizard-driven Machine Catalogs and Delivery Groups.
  • When testing multi-user functionality, always test from two or more user devices simultaneously. Being that NetScaler is pre-configured, those devices can be located remotely and accessed via the URL that was first sent to you via the Azure notification.
  • You can add XenApp servers to the trial environment, but you will need to install the VDA software, so someone with access to a Citrix account will need to provide the developer with the VDA. Although it may seem like a good idea to transition the VDI server to a VDA server in order to give you two VDA servers, don’t attempt it (been there, done that!).

If a database is needed, the SQL Server Express instance housed on the Controller server can serve for basic requirements. If a more robust database is required, a database server should be appended to the environment.

One of the great features of this trial environment is that you can blow it up if something goes wrong by just deleting the Resource Group. Also, because it is not tied to any corporate infrastructure, there is no possible downstream impact to production users. And no change control!

But wait, there’s more: App certification

Once the application is working correctly and the environment is set up, take an extra hour or so to validate it for Citrix Ready. There’s no charge for validation at the basic level, and this will enable the application to be listed on the Citrix Ready web site. Citrix provides details about the Citrix Ready program here:

The first step is to install AppDNA, so again, someone with a Citrix account will need to provide the developer with the software. The trial license is the Platinum edition, so AppDNA functionality is available. Although not officially supported, you can use the SQL Server Express instance for the AppDNA database.

AppDNA is very easy to use; the interface is intuitive and straightforward. Within the first screen, it’s just a matter of uploading the application install and running the analysis. The Citrix Ready information will advise which reports and other information are required. Send off to Citrix, and voila, the application will be certified.

Wrap up

Developers that are unfamiliar with Citrix may have some questions along the way, but the information provided within this article should largely enable them to validate and certify applications for Citrix XenApp with minimal assistance. 

Dig Deeper on Citrix virtual desktops