Testing and Mitigating Issues
After you analyze your issues in the ACM, you can continue to explore your compatibility issues by using several development tools provided with the ACT. The development tools enable you to test for a variety of compatibility issues, including Web site and Web application issues, issues related to running as a standard user in Windows 7, and issues that might arise because of actions taken by an application's installer program. Additionally, the ACT provides a tool that can help you resolve many of your compatibility issues: the Compatibility Administrator. To resolve your compatibility problems, you must follow these steps:
- Identify your most critical applications. Create an inventory of your organization's applications and then verify certification status of the included applications to see whether they require testing.
- Identify any application compatibility problems. Test each application, determining any compatibility issues if necessary.
- Resolve any application compatibility issues. Identify and create application compatibility solutions by using the ACT tools, which include the IECTT, either the stand-alone version or the virtual version of the SAT, the SUA, and the Compatibility Administrator.
- Deploy or distribute your test and certified applications and solutions. Use a deployment and distribution tool, such as System Center Configuration Manager 2007, to deploy your certified applications and compatibility issue solution packages to your client desktops.
When testing an application in a new operating system, Microsoft recommends that you retain the default security feature selections. Microsoft also recommends that you thoroughly test the applications, replicating as many of the usage scenarios from within your organization as possible. Finally, Microsoft recommends that you enter your issues and solutions into the ACM so that you can track the data from a central location.
When testing a Web site or a Web application, Microsoft recommends that you include both intranet and extranet sites, prioritizing the list based on how critical the site or the application is to your organization. Microsoft also recommends that you thoroughly test the Web sites and Web applications, replicating as many of the usage scenarios from within your organization as possible. Finally, Microsoft recommends that you enter your issues into the ACM so that you can share that data with both Microsoft and the ACT Community to receive potential solutions for your issues.
Building a Test Lab
Your test environment should be a long-term investment in the overall deployment process. Retain the test environment after the deployment to assist in future deployment projects. To create the test environment, you must determine how to model the production environment in the test environment and configure the test environment to support automated testing of the mitigation strategies.
Microsoft recommends that you establish a dedicated and isolated lab environment for use in developing and testing the application compatibility mitigation. The lab should mirror your production environment as closely as possible. In some cases, you might find that it is better to open up the test network to existing production services, instead of replicating your production environment in detail. For example, you might want to permit your Dynamic Host Configuration Protocol (DHCP) packets to pass through routers into the test network. Some operations can be safely conducted in the production environment, such as the application inventory collection process. At a minimum, your lab environment should include:
- DHCP services
- Domain Name System (DNS) services
- SQL Server 2005 or SQL Server 2005 Express
- Lab test user accounts, with both normal user and administrative privileges
- Network hardware to provide Internet access (for downloading updates, files, and so on)
- Test computers that accurately reflect production computers in both software and hardware configuration
- A software library representing all the applications to be tested
- Windows Server 2008 R2 with Hyper-V
- Windows Internet Naming Service (WINS) services (optional)
In most instances, you must test the mitigation strategies more than once and must be able to revert reliably to a previous test state. Automating your testing process enables you to ensure reproducibility and consistency in your testing process. Using test automation tools enables you to run your test cases in a standardized, reproducible manner. Using disk-imaging software for physical images of the servers and using software virtualization features for reversing changes to virtualized hard disks enables you to restore your test environment back to a previous state.
In this tutorial:
- Testing Application Compatibility
- Understanding Compatibility
- Why Applications Fail
- Choosing the Best Tool
- Program Compatibility Assistant
- Windows XP Mode
- Application Virtualization
- Understanding the ACT
- Support Topologies
- Compatibility Evaluators
- Planning for the ACT
- Choosing a Deployment Method
- Preparing for the ACT
- Sharing the Log Processing Folder
- Installing the ACT 5.5
- Collecting Compatibility Data
- Analyzing Compatibility Data
- Prioritizing Compatibility Data
- Assessing Application Compatibility
- Managing Compatibility Issues
- Filtering Compatibility Data
- Rationalizing an Application Inventory
- Testing and Mitigating Issues
- Modeling the Production Environment
- Using the Compatibility Administrator
- Deploying Application Mitigation Packages