The logically inter related blocks of modules within a System Under Test can be automated in a modularized block of code, in the following outlined manner. for our case we will just have a look at how we have create three different Uitest files.

The first UiTest file is AllLink.uitest file, which is actually a xml file, and its two components are namely , AllLink.cs and AllLink.designer.cs file. The designer file is non editable file which incorporates all the recorded set of scripts in it. The AllLink.cs file is again a partial class file which is used for more of data overriding and code globalisation along with reusability.

The second UiTest file is UsrIntrfc.uitest file, which is actually a xml file, and its two components are namely , UsrIntrfc.cs and UsrIntrfc.designer.cs file. The designer file is non editable file which incorporates all the recorded set of scripts in it. The UsrIntrfc.cs file is again a partial class file which is used for more of data overriding and code globalisation along with reusability.

The third UiTest file is MsgValidatn.uitest file, which is actually a xml file, and its two components are namely , MsgValidatn.cs and MsgValidatn.designer.cs file. The designer file is non editable file which incorporates all the recorded set of scripts in it. The MsgValidatn.cs file is again a partial class file which is used for more of data overriding and code globalisation along with reusability.

The approach for recording the various functions outlined as under has thus been classified into three specific categories, namely clicking the links, doing the functional event, and finally validating the final event of functionality being successful.

The AllLink uitest file is actually an xml file having the events related to clicking the links, similarly UsrIntrfc is the functional event, MsgValdtn is the validation checkpoint also called the assertion point in VSTS as termed in QTP automation.

At last we have one class file wherein , we will bring into use all three events from three uitest files and create a standard framework for automating with minimal rework effort.

Just have a look at the snapshot below to gain insights into how we arrange the multiple uitst files :

As outlined in the code below, we create an instance of all three uitest files, and utilize the features available as per the record time in them.

using System;

using System.Collections.Generic;

using System.Text.RegularExpressions;

using System.Windows.Input;

using System.Windows.Forms;

using System.Drawing;

using Microsoft.VisualStudio.TestTools.UITesting;

using Microsoft.VisualStudio.TestTools.UnitTesting;

using Microsoft.VisualStudio.TestTools.UITest.Extension;

usingKeyboard = Microsoft.VisualStudio.TestTools.UITesting.Keyboard;

using multipleuimaps.Uimaps.AllLinkClasses;

using multipleuimaps.UIAssertions.UsrIntrfcClasses;

using multipleuimaps.MsgValdtn.MsgValdtnClasses;

namespace multipleuimaps.Uimaps.AllLinkClasses

{

///

/// Summary description for CodedUITest1

///

[CodedUITest]

publicclassUploadValidation

{

public UploadValidation()

{

}

[TestMethod]

publicvoid UploadValidationTestMethod1()

{

// To generate code for this test, select "Generate Code for Coded UI Test" from the shortcut menu and select one of the menu items.

// For more information on generated code, see http://go.microsoft.com/fwlink/?LinkId=179463

this.AllLink.ClkDocLink();

this.UsrIntrfc.FeatrUploadDoc();

this.MsgValdtn.ScsfulyUplodedDoc();

//this.AllLink.ClkDocMyHomeLnk();

//this.AllLink.ClkDocAdminLnk();

//this.AllLink.ClkDocAdminPrmsnLnk();

//this.AllLink.ClkDocAdminFltrLnk();

//this.AllLink.ClkDocAdminCreateRepLnk();

//this.AllLink.ClkDocAdminEditRepLnk();

}

#region Additional test attributes

// You can use the following additional attributes as you write your tests:

////Use TestInitialize to run code before running each test

//[TestInitialize()]

//public void MyTestInitialize()

//{

// // To generate code for this test, select "Generate Code for Coded UI Test" from the shortcut menu and select one of the menu items.

// // For more information on generated code, see http://go.microsoft.com/fwlink/?LinkId=179463

//}

////Use TestCleanup to run code after each test has run

//[TestCleanup()]

//public void MyTestCleanup()

//{

// // To generate code for this test, select "Generate Code for Coded UI Test" from the shortcut menu and select one of the menu items.

// // For more information on generated code, see http://go.microsoft.com/fwlink/?LinkId=179463