Compatibility testing isn't just confined to whether the application can work with Citrix but also includes legal and vendor specific implications.
The application vendor may not license their application to be used in a Citrix environment. This is a serious compatibility issue which can inevitably become a show stopper. There may be those that simply ignore the legality of this and press ahead with their migration campaign.
Ideally the application must be certified by the vendor as suitable for use within a Citrix environment. This certification guarantees that the application vendor has run compatibility tests themselves to ensure that the application does indeed work with Citrix.
As compatibility testing is very time consuming and therefore very costly. It's better to ensure that the application vendor has done some compatibility testing rather than trying to commit to it all yourself.
"Sorry, we only support this application in non-Citrix environments!"
Support from the application vendor is also important for the compatibility testing process. If the vendor refuses to support the application when it is installed in a Citrix environment then the implications of this need to be clearly understood.
The problems that could result further down the line, if the application specific issues appear could prove to be costly in times downtime and rectification costs.
The final stage of compatibility testing is to configure the application to work in a Citrix environment. Hopefully if the application vendor has certified the application for a Citrix environment, it shouldn't be too difficult getting the application to work.
Remember that in the Citrix environment we are not using functional testing in the conventional sense, that is to solely find bugs in application coding or components such as buttons, menus, messages etc.
Instead we are assuming that the application is already stable and usable in a normal desktop (thick client) environment and our concern therefore focuses on functionally tested for any configuration and co-existence issues with a thin client environment.
It is important to consider that if an application is being specifically developed for a Citrix environment, the application must undergo testing on an equivalent thick client first. Hence if Citrix is being deployed on a Windows 2000 server then the application must be functionally tested on a Windows 2000 Professional client. If Citrix is being deployed on Windows 2003 server then the application must be tested on a Windows XP client.
In conclusion, we can avoid many compatibility problems later by conducting Citrix compatibility testing.