The ideal implementation of Test Automation as a Serviceuses the appropriate elements of the .NET and Azure frameworks to provide a scalable, adaptable and robust platform based mainly upon Microsoft technologies.

The external interfaces of the system consist of a set of WCF services and ASPX or Silverlight 4.0 web endpoints.

SOAP is the current HTTP service implementation, RESTful services are an easy extension of the existing code base.

Depending on Customer integration requirements, Windows services or local Win32 adapter executables may be used.

Internally the system will interact via an Enterprise Service Bus based on the existing XML messages defined for the current implementation. Data persistence will be provided by SQL Azure.

All services, business logic and web endpoints are implemented in C# 4.0.

Test lab and execution environments will be provided by the Microsoft Lab Management environment controlled by Microsoft Test Manager(MTM).

The test run environment will be supported by a Hyper Visor implementation (Viridian) controlled by the framework.

All flavours of platform and operating system are supported by this strategy, therefore cross platform and browser testing can be supported.

In general the Hyper Visor implementation will act as adependency injection Virtual Machine dispenser.

A test run virtual computer with the required operating system, software configuration, hardware and browser version can be produced on demand to support the application under test.

This approach will minimise the licence costs of the platform and maximise its scalability.

Since all software licenses are copies which are used on demand and the number of the instances is controlled by the Hyper visor.

This allows queuing and prioritisation of test activity to control licence cost exposure.

The active test cycle will record real time results via the ESB.

Monitoring and configuration of the framework is inherent inthe Azure implementation and requires little or no input from the development team.

Customer Applications

Take on of client applications will be achieved through Microsoft Test Manager (MTM) integration and a Custom Resource loader application.

Depending on the existing test assets, it will be possible to add a new customer application with minimal human intervention

Through integration with Team Foundation Server or Team City, a framework build integration agent will allow testing of release candidates and tracking of test assets.

A Customer dashboard will allow client to interact with the system including scheduling tests and viewing results.

Test Platform

Due to the distributed modular design of the Framework many kinds of testing may be applied to the application under test.

The test types include load, regression, smoke, penetration,accessibility, cross-browser and search engine optimisation.

Customers could subscribe to the different tests types on a pay-per-use basis.

The use of an ESB/WCF architecture would allow third party specialist test companies to execute tests via the Framework infrastructure

Last edited Jun 19, 2013 at 1:06 PM by Jonathon_Wright, version 2