WTStek.com Windows Terminal Server, Virtualization, Application Delivery, Windows Software Development, Market Analysis, Training Classes and more...
Navigation

The Book

  Table of Content
  Preface
  About This Book

Part I A Beginner's Guide to Terminal Services

1 Terminal Services Overview
2 System Installation
3 Licensing
4 System Configuration
5 User Access and Client Software
6 Application Installation
7 System Administration and Operation
8 Server Sizing and Scalability

Part II – An Expert's Guide to Terminal Services

9 Terminal Server Internals
10 Network Planning and High Availability
11 User Environment
12 Access and Security
13 Printing
14 Registry
15 Scripting
16 Web Technologies

Part III – Terminal Services Complementary Concepts

17 Third Party Extension Products
18 Desktop and Application Virtualization
19 Deployment Automation
20 Resource and Security Management
21 Testing and Quality Assurance
22 Optimization and Performance Tuning
23 Project Methodology
24 Terminal Services API

My Profile

... About this Web Site
... Benny's Biography
... Presentations 2008, 2007, 2006, 2005, 2004 and earlier

 


Awards

 

Microsoft MVP

 

Provision Networks / Quest VIP

 

Microsoft Windows Server 2008 Terminal Services

21. Testing and Quality Assurance

Posted by Benny Tritsch on June 22, 2008

[Testing and QA] [Criteria] [Methodology] [Tools and Products]

Back Next

21.1. Test Criteria

Read in this lesson...

  1. What Do You Want to Know?

 

To perform a successful test, you first need to define the objectives. First, it is imperative to find out if terminal servers are the right corporate solution:

  • Can all important applications be provided on terminal servers?
  • How many users will be affected by a possible migration to terminal servers?
  • What are the requirements relating to the terminal server environment's stability, availability, and scalability?
  • How will the company and employees be affected if a terminal server fails?
  • How easy will it be to increase system resources, if required?

These questions need to be answered in respect for business processes within the company in the first instance. If the answer turns out in favor of terminal servers, the same questions need to be answered with a view to the technical aspects. Tests are, of course, required to back up the entire argumentation. After all, the strategic introduction of terminal servers is quite expensive and is no easy task from a technical point of view.

What Do You Want to Know?

This is exactly where the problems start: how to test? It is almost impossible to install a reference environment that corresponds to the planned target environment. Furthermore, it is usually counterproductive if the future users are asked to participate in internal testing. For these reasons, it is recommended that an independent test environment be defined and a simulation be performed that includes all suitable methods and tools. Many of the potential problems can be discovered at this early stage. Only in relatively small and undemanding environments is it possible to perform the relevant tests directly in a production environment, and only for a limited period of time.

Evaluating the terminal servers in a test environment helps make concrete statements on the expected operating conditions and limiting values. When evaluating the environment, several criteria must be taken into account:

  • Performance: Performance tests are used to evaluate an environment's individual areas in terms of speed. A test tool must therefore be able to simulate many simultaneous accesses to determine the respective response times of each area. The results can be integrated in the corresponding service level agreements. With this type of test, it is, for example, possible to determine the dialog change time of an application under different conditions.
  • Load: A load test subjects the environment to the kind of access and usage rate expected in routine operation. This requires the test to define the maximum response time for the individual system components and to align the response time with the existing state of technical implementation. The corresponding measurements need realistic load samples simulated by the test tool. The results show whether the response times are within the expected limits.
  • Stress: Stress tests are simulated, mostly benign attacks that generate excessive loads in an environment. In reality, this type of test corresponds to a peak load that could be the result of certain conditions, such as the start of work, end of a quarter, or successful marketing activities. The main goal of a stress test is to find out when an environment starts generating errors and whether it reverts to normal after extreme stress.
  • Endurance: An endurance test subjects an environment to a predefined load for some considerable time. During this period the test examines whether certain parameters change significantly, for instance memory requirement, processor load, and response times. The results allow statements to be made on the quality of the programs and components used. This is especially important for an environment's long-term operation.
  • Scalability: The term scalability does not say much about an environment's response behavior. It does, however, describe its behavior in relation to access times when the number of users is increased. A scalability test therefore delivers the values required for extending an environment and guaranteeing constant service quality with increasing numbers of users. The individual components are examined and evaluated as to their ability to be scaled up (that is, the relevant platform is updated) and scaled out (that is, the number of relevant platforms is increased).

Security is another criterion, but we will not cover this in detail here. Special tests help observe terminal server behavior in case of attacks on the security system.

If your terminal server project team does not include an expert with sufficient knowledge of Windows Server 2008 and networks, testing and productive operation of Terminal Services will be a challenge. A terminal server requires – at least in the planning, testing and deployment phases – a high degree of competent maintenance, which takes a lot of time and effort.

 

Back Next

 

Read in this chapter...
21 Testing and Quality Assurance
21.1 Test Criteria
21.2 Test Methodology
21.3 Available Tools and Products