Initial commit
Showing
33 changed files
with
2818 additions
and
0 deletions
ConsoleHostApp/App.config
0 → 100644
1 | <?xml version="1.0" encoding="utf-8" ?> | ||
2 | <configuration> | ||
3 | <appSettings> | ||
4 | <add key="httpBindingAddress" value="http://localhost:8080" /> | ||
5 | </appSettings> | ||
6 | <system.serviceModel> | ||
7 | <behaviors> | ||
8 | <serviceBehaviors> | ||
9 | <behavior> | ||
10 | <serviceMetadata httpGetEnabled="True"/> | ||
11 | </behavior> | ||
12 | </serviceBehaviors> | ||
13 | </behaviors> | ||
14 | </system.serviceModel> | ||
15 | </configuration> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
ConsoleHostApp/ConsoleHostApp.csproj
0 → 100644
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
3 | <PropertyGroup> | ||
4 | <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> | ||
5 | <Platform Condition=" '$(Platform)' == '' ">x86</Platform> | ||
6 | <ProductVersion>8.0.30703</ProductVersion> | ||
7 | <SchemaVersion>2.0</SchemaVersion> | ||
8 | <ProjectGuid>{111EAA75-6E7A-48CA-8C9D-56EC2FE08BB2}</ProjectGuid> | ||
9 | <OutputType>Exe</OutputType> | ||
10 | <AppDesignerFolder>Properties</AppDesignerFolder> | ||
11 | <RootNamespace>ConsoleHostApp</RootNamespace> | ||
12 | <AssemblyName>ConsoleHostApp</AssemblyName> | ||
13 | <TargetFrameworkVersion>v4.0</TargetFrameworkVersion> | ||
14 | <TargetFrameworkProfile>Client</TargetFrameworkProfile> | ||
15 | <FileAlignment>512</FileAlignment> | ||
16 | </PropertyGroup> | ||
17 | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> | ||
18 | <PlatformTarget>x86</PlatformTarget> | ||
19 | <DebugSymbols>true</DebugSymbols> | ||
20 | <DebugType>full</DebugType> | ||
21 | <Optimize>false</Optimize> | ||
22 | <OutputPath>bin\Debug\</OutputPath> | ||
23 | <DefineConstants>DEBUG;TRACE</DefineConstants> | ||
24 | <ErrorReport>prompt</ErrorReport> | ||
25 | <WarningLevel>4</WarningLevel> | ||
26 | </PropertyGroup> | ||
27 | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> | ||
28 | <PlatformTarget>x86</PlatformTarget> | ||
29 | <DebugType>pdbonly</DebugType> | ||
30 | <Optimize>true</Optimize> | ||
31 | <OutputPath>bin\Release\</OutputPath> | ||
32 | <DefineConstants>TRACE</DefineConstants> | ||
33 | <ErrorReport>prompt</ErrorReport> | ||
34 | <WarningLevel>4</WarningLevel> | ||
35 | </PropertyGroup> | ||
36 | <ItemGroup> | ||
37 | <Reference Include="System" /> | ||
38 | <Reference Include="System.configuration" /> | ||
39 | <Reference Include="System.Core" /> | ||
40 | <Reference Include="System.ServiceModel" /> | ||
41 | <Reference Include="System.Xml.Linq" /> | ||
42 | <Reference Include="System.Data.DataSetExtensions" /> | ||
43 | <Reference Include="Microsoft.CSharp" /> | ||
44 | <Reference Include="System.Data" /> | ||
45 | <Reference Include="System.Xml" /> | ||
46 | </ItemGroup> | ||
47 | <ItemGroup> | ||
48 | <Compile Include="Program.cs" /> | ||
49 | <Compile Include="Properties\AssemblyInfo.cs" /> | ||
50 | </ItemGroup> | ||
51 | <ItemGroup> | ||
52 | <ProjectReference Include="..\PerformanceService\PerformanceService.csproj"> | ||
53 | <Project>{298113F4-7126-4E1A-ADD1-F6C5327370E8}</Project> | ||
54 | <Name>PerformanceService</Name> | ||
55 | </ProjectReference> | ||
56 | </ItemGroup> | ||
57 | <ItemGroup> | ||
58 | <None Include="App.config" /> | ||
59 | </ItemGroup> | ||
60 | <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> | ||
61 | <!-- To modify your build process, add your task inside one of the targets below and uncomment it. | ||
62 | Other similar extension points exist, see Microsoft.Common.targets. | ||
63 | <Target Name="BeforeBuild"> | ||
64 | </Target> | ||
65 | <Target Name="AfterBuild"> | ||
66 | </Target> | ||
67 | --> | ||
68 | </Project> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
ConsoleHostApp/Program.cs
0 → 100644
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.Linq; | ||
4 | using System.Text; | ||
5 | using System.ServiceModel; | ||
6 | using PerformanceService; | ||
7 | using System.Configuration; | ||
8 | |||
9 | namespace ConsoleHostApp | ||
10 | { | ||
11 | class Program | ||
12 | { | ||
13 | static void Main(string[] args) | ||
14 | { | ||
15 | // Start the EmailValidator Service | ||
16 | Type serviceType = typeof(EmailValidator); | ||
17 | string httpBindingAddress = ConfigurationManager.AppSettings["httpBindingAddress"]; | ||
18 | Uri serviceUri = new Uri(httpBindingAddress + "/EmailValidator"); | ||
19 | ServiceHost host = new ServiceHost(serviceType, serviceUri); | ||
20 | host.Open(); | ||
21 | |||
22 | // Output some info... | ||
23 | #region Output dispatchers listening | ||
24 | foreach (Uri uri in host.BaseAddresses) | ||
25 | { | ||
26 | Console.WriteLine("\t{0}", uri.ToString()); | ||
27 | } | ||
28 | Console.WriteLine(); | ||
29 | Console.WriteLine("Number of dispatchers listening : {0}", host.ChannelDispatchers.Count); | ||
30 | foreach (System.ServiceModel.Dispatcher.ChannelDispatcher dispatcher in host.ChannelDispatchers) | ||
31 | { | ||
32 | Console.WriteLine("\t{0}, {1}", dispatcher.Listener.Uri.ToString(), dispatcher.BindingName); | ||
33 | } | ||
34 | Console.WriteLine(); | ||
35 | Console.WriteLine("Press <ENTER> to terminate Host"); | ||
36 | Console.ReadLine(); | ||
37 | #endregion | ||
38 | } | ||
39 | } | ||
40 | } |
ConsoleHostApp/Properties/AssemblyInfo.cs
0 → 100644
1 | using System.Reflection; | ||
2 | using System.Runtime.CompilerServices; | ||
3 | using System.Runtime.InteropServices; | ||
4 | |||
5 | // General Information about an assembly is controlled through the following | ||
6 | // set of attributes. Change these attribute values to modify the information | ||
7 | // associated with an assembly. | ||
8 | [assembly: AssemblyTitle("ConsoleHostApp")] | ||
9 | [assembly: AssemblyDescription("")] | ||
10 | [assembly: AssemblyConfiguration("")] | ||
11 | [assembly: AssemblyCompany("Microsoft")] | ||
12 | [assembly: AssemblyProduct("ConsoleHostApp")] | ||
13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2011")] | ||
14 | [assembly: AssemblyTrademark("")] | ||
15 | [assembly: AssemblyCulture("")] | ||
16 | |||
17 | // Setting ComVisible to false makes the types in this assembly not visible | ||
18 | // to COM components. If you need to access a type in this assembly from | ||
19 | // COM, set the ComVisible attribute to true on that type. | ||
20 | [assembly: ComVisible(false)] | ||
21 | |||
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM | ||
23 | [assembly: Guid("9c49e1d8-b195-4b96-a5c6-89905cd367c5")] | ||
24 | |||
25 | // Version information for an assembly consists of the following four values: | ||
26 | // | ||
27 | // Major Version | ||
28 | // Minor Version | ||
29 | // Build Number | ||
30 | // Revision | ||
31 | // | ||
32 | // You can specify all the values or you can default the Build and Revision Numbers | ||
33 | // by using the '*' as shown below: | ||
34 | // [assembly: AssemblyVersion("1.0.*")] | ||
35 | [assembly: AssemblyVersion("1.0.0.0")] | ||
36 | [assembly: AssemblyFileVersion("1.0.0.0")] |
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.Linq; | ||
4 | using System.Text; | ||
5 | using Microsoft.VisualStudio.TestTools.LoadTesting; | ||
6 | |||
7 | namespace PluginLib | ||
8 | { | ||
9 | public class LoadtestContextCopy : ILoadTestPlugin | ||
10 | { | ||
11 | // Summary: | ||
12 | // Initializes the load test plug-in. | ||
13 | // | ||
14 | // Parameters: | ||
15 | // loadTest: | ||
16 | // The load test to be executed. | ||
17 | |||
18 | LoadTest m_loadTest; | ||
19 | |||
20 | public void Initialize(LoadTest loadTest) | ||
21 | { | ||
22 | m_loadTest = loadTest; | ||
23 | m_loadTest.TestStarting += new EventHandler<TestStartingEventArgs>(loadTestStarting); | ||
24 | } | ||
25 | |||
26 | void loadTestStarting(object sender, TestStartingEventArgs e) | ||
27 | { | ||
28 | foreach (string key in m_loadTest.Context.Keys) | ||
29 | { | ||
30 | e.TestContextProperties.Add(key, m_loadTest.Context[key]); | ||
31 | } | ||
32 | } | ||
33 | } | ||
34 | } |
LoadTestLib/LoadTestLib/PluginLib.csproj
0 → 100644
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
3 | <PropertyGroup> | ||
4 | <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> | ||
5 | <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> | ||
6 | <ProductVersion>8.0.30703</ProductVersion> | ||
7 | <SchemaVersion>2.0</SchemaVersion> | ||
8 | <ProjectGuid>{226AB0FE-47CF-4C69-8330-C86327AA4246}</ProjectGuid> | ||
9 | <OutputType>Library</OutputType> | ||
10 | <AppDesignerFolder>Properties</AppDesignerFolder> | ||
11 | <RootNamespace>PluginLib</RootNamespace> | ||
12 | <AssemblyName>LoadTestLib</AssemblyName> | ||
13 | <TargetFrameworkVersion>v4.0</TargetFrameworkVersion> | ||
14 | <FileAlignment>512</FileAlignment> | ||
15 | <SccProjectName> | ||
16 | </SccProjectName> | ||
17 | <SccLocalPath> | ||
18 | </SccLocalPath> | ||
19 | <SccAuxPath> | ||
20 | </SccAuxPath> | ||
21 | <SccProvider> | ||
22 | </SccProvider> | ||
23 | </PropertyGroup> | ||
24 | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> | ||
25 | <DebugSymbols>true</DebugSymbols> | ||
26 | <DebugType>full</DebugType> | ||
27 | <Optimize>false</Optimize> | ||
28 | <OutputPath>bin\Debug\</OutputPath> | ||
29 | <DefineConstants>DEBUG;TRACE</DefineConstants> | ||
30 | <ErrorReport>prompt</ErrorReport> | ||
31 | <WarningLevel>4</WarningLevel> | ||
32 | </PropertyGroup> | ||
33 | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> | ||
34 | <DebugType>pdbonly</DebugType> | ||
35 | <Optimize>true</Optimize> | ||
36 | <OutputPath>bin\Release\</OutputPath> | ||
37 | <DefineConstants>TRACE</DefineConstants> | ||
38 | <ErrorReport>prompt</ErrorReport> | ||
39 | <WarningLevel>4</WarningLevel> | ||
40 | </PropertyGroup> | ||
41 | <ItemGroup> | ||
42 | <Reference Include="Microsoft.VisualStudio.QualityTools.LoadTestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" /> | ||
43 | <Reference Include="System" /> | ||
44 | <Reference Include="System.Core" /> | ||
45 | <Reference Include="System.Xml.Linq" /> | ||
46 | <Reference Include="System.Data.DataSetExtensions" /> | ||
47 | <Reference Include="Microsoft.CSharp" /> | ||
48 | <Reference Include="System.Data" /> | ||
49 | <Reference Include="System.Xml" /> | ||
50 | </ItemGroup> | ||
51 | <ItemGroup> | ||
52 | <Compile Include="LoadTestContextCopy.cs" /> | ||
53 | <Compile Include="Properties\AssemblyInfo.cs" /> | ||
54 | <Compile Include="SetTestUser.cs" /> | ||
55 | </ItemGroup> | ||
56 | <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> | ||
57 | <!-- To modify your build process, add your task inside one of the targets below and uncomment it. | ||
58 | Other similar extension points exist, see Microsoft.Common.targets. | ||
59 | <Target Name="BeforeBuild"> | ||
60 | </Target> | ||
61 | <Target Name="AfterBuild"> | ||
62 | </Target> | ||
63 | --> | ||
64 | </Project> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | using System.Reflection; | ||
2 | using System.Runtime.CompilerServices; | ||
3 | using System.Runtime.InteropServices; | ||
4 | |||
5 | // General Information about an assembly is controlled through the following | ||
6 | // set of attributes. Change these attribute values to modify the information | ||
7 | // associated with an assembly. | ||
8 | [assembly: AssemblyTitle("LoadTestLib")] | ||
9 | [assembly: AssemblyDescription("")] | ||
10 | [assembly: AssemblyConfiguration("")] | ||
11 | [assembly: AssemblyCompany("Siemens")] | ||
12 | [assembly: AssemblyProduct("LoadTestLib")] | ||
13 | [assembly: AssemblyCopyright("Copyright © Siemens 2011")] | ||
14 | [assembly: AssemblyTrademark("")] | ||
15 | [assembly: AssemblyCulture("")] | ||
16 | |||
17 | // Setting ComVisible to false makes the types in this assembly not visible | ||
18 | // to COM components. If you need to access a type in this assembly from | ||
19 | // COM, set the ComVisible attribute to true on that type. | ||
20 | [assembly: ComVisible(false)] | ||
21 | |||
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM | ||
23 | [assembly: Guid("38a50875-fe88-472f-b2eb-272d9255cb5f")] | ||
24 | |||
25 | // Version information for an assembly consists of the following four values: | ||
26 | // | ||
27 | // Major Version | ||
28 | // Minor Version | ||
29 | // Build Number | ||
30 | // Revision | ||
31 | // | ||
32 | // You can specify all the values or you can default the Build and Revision Numbers | ||
33 | // by using the '*' as shown below: | ||
34 | // [assembly: AssemblyVersion("1.0.*")] | ||
35 | [assembly: AssemblyVersion("1.0.0.0")] | ||
36 | [assembly: AssemblyFileVersion("1.0.0.0")] |
LoadTestLib/LoadTestLib/SetTestUser.cs
0 → 100644
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.Linq; | ||
4 | using System.Text; | ||
5 | using Microsoft.VisualStudio.TestTools.LoadTesting; | ||
6 | using System.ComponentModel; | ||
7 | using System.IO; | ||
8 | using System.Collections.Specialized; | ||
9 | |||
10 | namespace PluginLib | ||
11 | { | ||
12 | [DisplayName("Set Parameter In Context")] | ||
13 | [Description("Sätter en parameter i testcontextet för alla eller vissa tester i mixen hämtat från en CSV fil")] | ||
14 | public class SetTestUser : ILoadTestPlugin | ||
15 | { | ||
16 | // Summary: | ||
17 | // Initializes the load test plug-in. | ||
18 | // | ||
19 | // Parameters: | ||
20 | // loadTest: | ||
21 | // The load test to be executed. | ||
22 | private string myConnectionString; | ||
23 | private string myLogFileString; | ||
24 | private string myParameterName; | ||
25 | private string myTestNames; | ||
26 | private bool myUseRandom = true; | ||
27 | private bool myUseUnique = false; | ||
28 | private bool myUseUniqueIteration = false; | ||
29 | private bool myLogToFile = false; | ||
30 | private bool mySeqLoop = false; | ||
31 | private StringCollection myParams = new StringCollection(); | ||
32 | private Random random = new Random(); | ||
33 | private LoadTest m_loadTest; | ||
34 | |||
35 | [DisplayName("Endast dessa Tester")] | ||
36 | [Description("Ange de tester som ska få denna parameter. Lämna blankt för alla tester. Testets namn måste annars finnas i denna sträng för att få parametervärdet.")] | ||
37 | [DefaultValue("")] | ||
38 | public string Test_Names | ||
39 | { | ||
40 | get { return myTestNames; } | ||
41 | set { myTestNames = value.ToLower(); } | ||
42 | } | ||
43 | |||
44 | [DisplayName("Sökväg till CSV fil")] | ||
45 | [Description("Ange den fullständiga sökvägen till CSV filen. Observera att filen behöver finnas på alla agenterna också om du inte kör lokalt.")] | ||
46 | [DefaultValue("C:\\Userdata.csv")] | ||
47 | public string Connection_String | ||
48 | { | ||
49 | get { return myConnectionString; } | ||
50 | set { myConnectionString = value; } | ||
51 | } | ||
52 | |||
53 | [DisplayName("Context Parameter Namn")] | ||
54 | [Description("Ange namnet på parametern som vi ska lägga till i TestContext")] | ||
55 | [DefaultValue("UserName")] | ||
56 | public string Parameter_Name | ||
57 | { | ||
58 | get { return myParameterName; } | ||
59 | set { myParameterName = value; } | ||
60 | } | ||
61 | |||
62 | [DisplayName("Logga fungerande till")] | ||
63 | [Description("Ange den fullständiga sökvägen till logg filen. Om filen finns kommer den inte skrivas över utan läggas till i slutet.")] | ||
64 | [DefaultValue("C:\\Temp\\Fungerande.log")] | ||
65 | [CategoryAttribute("Loggning")] | ||
66 | public string LogFilePathString | ||
67 | { | ||
68 | get { return myLogFileString; } | ||
69 | set { myLogFileString = value; } | ||
70 | } | ||
71 | |||
72 | [DisplayName("Välj slumpmässigt?")] | ||
73 | [Description("Ange True om du vill välja en slumpmässig användare. False går igenom listan sekventiellt.")] | ||
74 | [DefaultValue(true)] | ||
75 | public bool Use_Random | ||
76 | { | ||
77 | get { return myUseRandom; } | ||
78 | set { myUseRandom = value; } | ||
79 | } | ||
80 | |||
81 | [DisplayName("Välj unikt per VU?")] | ||
82 | [Description("Ange True om du vill att varje LoadTest VU ska ha sitt eget unika värde och återanvända detta i varje iteration. Stänger av slumpmässigt val.")] | ||
83 | [DefaultValue(false)] | ||
84 | public bool Use_Unique | ||
85 | { | ||
86 | get { return myUseUnique; } | ||
87 | set { myUseUnique = value; } | ||
88 | } | ||
89 | |||
90 | [DisplayName("Välj unikt per Iteration?")] | ||
91 | [Description("Ange True om du vill att varje LoadTest VU ska ha sitt eget unika värde för varje iteration, dvs aldrig återanvändas av någon under testet.")] | ||
92 | [DefaultValue(false)] | ||
93 | public bool Use_UniqueIteration | ||
94 | { | ||
95 | get { return myUseUniqueIteration; } | ||
96 | set { myUseUniqueIteration = value; } | ||
97 | } | ||
98 | |||
99 | [DisplayName("Välj sekventiell loop?")] | ||
100 | [Description("Ange true om du vill börja om från början om sekventiell läsning får slut på värden. Gäller även Unik läsning.")] | ||
101 | [DefaultValue(false)] | ||
102 | public bool Use_Loop | ||
103 | { | ||
104 | get { return mySeqLoop; } | ||
105 | set { mySeqLoop = value; } | ||
106 | } | ||
107 | |||
108 | [DisplayName("Logga fungerande till fil?")] | ||
109 | [Description("Ange True om du vill att poster vars tester slutar i Pass ska loggas till fil (c:\\fungerande.log). Om filen redan finns läggs de till i slutet.")] | ||
110 | [DefaultValue(false)] | ||
111 | [CategoryAttribute("Loggning")] | ||
112 | public bool Log_To_File | ||
113 | { | ||
114 | get { return myLogToFile; } | ||
115 | set { myLogToFile = value; } | ||
116 | } | ||
117 | |||
118 | public void Initialize(LoadTest loadTest) | ||
119 | { | ||
120 | // Vi bör läsa in alla värden här | ||
121 | this.initUserArray(myConnectionString); | ||
122 | |||
123 | if (myParams.Count > 0) | ||
124 | { | ||
125 | m_loadTest = loadTest; | ||
126 | if (myUseUniqueIteration) | ||
127 | m_loadTest.TestStarting += new EventHandler<TestStartingEventArgs>(loadTestStartingUniqueIteration); | ||
128 | else if(myUseUnique) | ||
129 | m_loadTest.TestStarting += new EventHandler<TestStartingEventArgs>(loadTestStartingUnique); | ||
130 | else if (myUseRandom) | ||
131 | m_loadTest.TestStarting += new EventHandler<TestStartingEventArgs>(loadTestStartingRandom); | ||
132 | else | ||
133 | m_loadTest.TestStarting += new EventHandler<TestStartingEventArgs>(loadTestStartingSeq); | ||
134 | } | ||
135 | if (myLogToFile) | ||
136 | { | ||
137 | m_loadTest.TestFinished += new EventHandler<TestFinishedEventArgs>(loadTestEndLogger); | ||
138 | } | ||
139 | } | ||
140 | |||
141 | void loadTestEndLogger(object sender, TestFinishedEventArgs e) | ||
142 | { | ||
143 | // Log the user to logfile if the test is passed | ||
144 | if (e.Result.Passed) | ||
145 | { | ||
146 | File.AppendAllText(myLogFileString, e.UserContext[myParameterName].ToString() + "\r\n"); | ||
147 | } | ||
148 | } | ||
149 | |||
150 | void loadTestStartingRandom(object sender, TestStartingEventArgs e) | ||
151 | { | ||
152 | // Check that its the right script | ||
153 | if (myTestNames.Length > 0 && !myTestNames.Contains(e.TestName.ToLower())) return; | ||
154 | |||
155 | // Add a context parameter to the starting test | ||
156 | string user = this.getRandomUser(); | ||
157 | e.TestContextProperties.Add(myParameterName, user); | ||
158 | e.UserContext[myParameterName] = user; | ||
159 | } | ||
160 | |||
161 | void loadTestStartingSeq(object sender, TestStartingEventArgs e) | ||
162 | { | ||
163 | // Check that its the right script | ||
164 | if (myTestNames.Length > 0 && !myTestNames.Contains(e.TestName.ToLower())) return; | ||
165 | |||
166 | // Add a context parameter to the starting test | ||
167 | string user = this.getSeqUser(e.UserContext.CompletedTestCount); | ||
168 | e.TestContextProperties.Add(myParameterName, user); | ||
169 | e.UserContext[myParameterName] = user; | ||
170 | } | ||
171 | |||
172 | void loadTestStartingUnique(object sender, TestStartingEventArgs e) | ||
173 | { | ||
174 | // Check that its the right script | ||
175 | if (myTestNames.Length > 0 && !myTestNames.Contains(e.TestName.ToLower())) return; | ||
176 | |||
177 | // Add a context parameter to the starting test | ||
178 | string user = this.getSeqUser(e.UserContext.UserId); | ||
179 | e.TestContextProperties.Add(myParameterName, user); | ||
180 | e.UserContext[myParameterName] = user; | ||
181 | } | ||
182 | |||
183 | void loadTestStartingUniqueIteration(object sender, TestStartingEventArgs e) | ||
184 | { | ||
185 | // Check that its the right script | ||
186 | if (myTestNames.Length > 0 && !myTestNames.Contains(e.TestName.ToLower())) return; | ||
187 | |||
188 | // Add a context parameter to the starting test | ||
189 | string user = this.getSeqUser(e.TestIterationNumber - 1); | ||
190 | e.TestContextProperties.Add(myParameterName, user); | ||
191 | e.UserContext[myParameterName] = user; | ||
192 | } | ||
193 | |||
194 | string getRandomUser() | ||
195 | { | ||
196 | int randomIndex = random.Next(myParams.Count - 1); | ||
197 | return myParams[randomIndex]; | ||
198 | } | ||
199 | |||
200 | string getSeqUser(int seqIndex) | ||
201 | { | ||
202 | if (seqIndex < myParams.Count) | ||
203 | return myParams[seqIndex]; | ||
204 | else | ||
205 | { | ||
206 | if (mySeqLoop) | ||
207 | return myParams[seqIndex % myParams.Count]; | ||
208 | else | ||
209 | return myParams[myParams.Count - 1]; | ||
210 | } | ||
211 | } | ||
212 | |||
213 | bool initUserArray(string path) | ||
214 | { | ||
215 | if (path.Length > 0) | ||
216 | { | ||
217 | StreamReader re = File.OpenText(path); | ||
218 | string input = null; | ||
219 | while ((input = re.ReadLine()) != null) | ||
220 | { | ||
221 | myParams.Add(input); | ||
222 | } | ||
223 | re.Close(); | ||
224 | return true; | ||
225 | } | ||
226 | else return false; | ||
227 | } | ||
228 | } | ||
229 | } |
LoadTestLib_20111206.7z
0 → 100644
No preview for this file type
Local.testsettings
0 → 100644
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <TestSettings name="Local" id="df2338c8-420f-4a05-9bb3-48c6f2903d23" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010"> | ||
3 | <Description>These are default test settings for a local test run.</Description> | ||
4 | <Deployment enabled="false" /> | ||
5 | <Execution> | ||
6 | <TestTypeSpecific /> | ||
7 | <AgentRule name="Execution Agents"> | ||
8 | </AgentRule> | ||
9 | </Execution> | ||
10 | </TestSettings> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
PerformanceService/EmailValidator.cs
0 → 100644
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.Linq; | ||
4 | using System.Text; | ||
5 | using System.ServiceModel; | ||
6 | using System.Text.RegularExpressions; | ||
7 | using System.Collections.Specialized; | ||
8 | using System.Runtime.CompilerServices; | ||
9 | |||
10 | namespace PerformanceService | ||
11 | { | ||
12 | [ServiceContract] | ||
13 | public interface IEmailValidator | ||
14 | { | ||
15 | [OperationContract] | ||
16 | bool ValidateAddress(string emailAddress); | ||
17 | |||
18 | [OperationContract] | ||
19 | int RegisterAdress(string emailAddress); | ||
20 | |||
21 | [OperationContract] | ||
22 | string GetAdress(int userID); | ||
23 | |||
24 | [OperationContract] | ||
25 | bool checkIfFull(); | ||
26 | |||
27 | [OperationContract] | ||
28 | bool checkIfFull2(); | ||
29 | } | ||
30 | |||
31 | // Implementation | ||
32 | public class EmailValidator : IEmailValidator | ||
33 | { | ||
34 | public bool ValidateAddress(string emailAddress) | ||
35 | { | ||
36 | Console.WriteLine("Validating: {0}", emailAddress); | ||
37 | string pattern = @"^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@(([0-9a-zA-Z])+([-\w]*[0-9a-zA-Z])*\.)+[a-zA-Z]{2,9})$"; | ||
38 | Random random = new Random(); | ||
39 | System.Threading.Thread.Sleep(random.Next(50, 250)); | ||
40 | return Regex.IsMatch(emailAddress, pattern); | ||
41 | } | ||
42 | |||
43 | public Int32 RegisterAdress(string emailAdress) | ||
44 | { | ||
45 | int userID = 0; | ||
46 | myRegistry.add(); | ||
47 | return userID; | ||
48 | } | ||
49 | |||
50 | public string GetAdress(int userID) | ||
51 | { | ||
52 | string emailAdress = "thisisatest@testamera.com"; | ||
53 | |||
54 | return emailAdress; | ||
55 | } | ||
56 | |||
57 | public bool checkIfFull() | ||
58 | { | ||
59 | |||
60 | if (myRegistry.checkIfFull() > 1) return false; else return true; | ||
61 | } | ||
62 | |||
63 | public bool checkIfFull2() | ||
64 | { | ||
65 | |||
66 | if (myRegistry.checkIfFull2() > 1) return false; else return true; | ||
67 | } | ||
68 | } | ||
69 | |||
70 | public class myRegistry | ||
71 | { | ||
72 | static int _val1 = 1, _val2 = 1, _val3 = 1; | ||
73 | private static StringCollection myParams = new StringCollection(); | ||
74 | |||
75 | public static int checkIfFull() | ||
76 | { | ||
77 | Random random = new Random(); | ||
78 | _val1 = 1; _val2 = 1; _val3 = 0; | ||
79 | |||
80 | if (_val2 != 0) | ||
81 | { | ||
82 | System.Threading.Thread.Sleep(random.Next(50, 100)); | ||
83 | _val3 = (_val1 / _val2); | ||
84 | } | ||
85 | _val2 = 0; | ||
86 | |||
87 | System.Threading.Thread.Sleep(random.Next(50, 100)); | ||
88 | return _val3; | ||
89 | } | ||
90 | |||
91 | [MethodImpl(MethodImplOptions.Synchronized)] | ||
92 | public static int checkIfFull2() | ||
93 | { | ||
94 | Random random = new Random(); | ||
95 | _val1 = 1; _val2 = 1; _val3 = 0; | ||
96 | |||
97 | if (_val2 != 0) | ||
98 | { | ||
99 | System.Threading.Thread.Sleep(random.Next(50, 100)); | ||
100 | _val3 = (_val1 / _val2); | ||
101 | } | ||
102 | _val2 = 0; | ||
103 | |||
104 | System.Threading.Thread.Sleep(random.Next(50, 100)); | ||
105 | return _val3; | ||
106 | } | ||
107 | |||
108 | public static void add() | ||
109 | { | ||
110 | Random random = new Random(); | ||
111 | string str1 = ""; | ||
112 | for (int x = 0; x < 5000; x++) | ||
113 | { | ||
114 | str1 = str1 + "abc123abc123 "; | ||
115 | } | ||
116 | myParams.Add(str1); | ||
117 | System.Threading.Thread.Sleep(random.Next(50, 100)); | ||
118 | } | ||
119 | } | ||
120 | |||
121 | } |
PerformanceService/PerformanceService.csproj
0 → 100644
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
3 | <PropertyGroup> | ||
4 | <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> | ||
5 | <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> | ||
6 | <ProductVersion>8.0.30703</ProductVersion> | ||
7 | <SchemaVersion>2.0</SchemaVersion> | ||
8 | <ProjectGuid>{298113F4-7126-4E1A-ADD1-F6C5327370E8}</ProjectGuid> | ||
9 | <OutputType>Library</OutputType> | ||
10 | <AppDesignerFolder>Properties</AppDesignerFolder> | ||
11 | <RootNamespace>PerformanceService</RootNamespace> | ||
12 | <AssemblyName>PerformanceService</AssemblyName> | ||
13 | <TargetFrameworkVersion>v4.0</TargetFrameworkVersion> | ||
14 | <FileAlignment>512</FileAlignment> | ||
15 | </PropertyGroup> | ||
16 | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> | ||
17 | <DebugSymbols>true</DebugSymbols> | ||
18 | <DebugType>full</DebugType> | ||
19 | <Optimize>false</Optimize> | ||
20 | <OutputPath>bin\Debug\</OutputPath> | ||
21 | <DefineConstants>DEBUG;TRACE</DefineConstants> | ||
22 | <ErrorReport>prompt</ErrorReport> | ||
23 | <WarningLevel>4</WarningLevel> | ||
24 | </PropertyGroup> | ||
25 | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> | ||
26 | <DebugType>pdbonly</DebugType> | ||
27 | <Optimize>true</Optimize> | ||
28 | <OutputPath>bin\Release\</OutputPath> | ||
29 | <DefineConstants>TRACE</DefineConstants> | ||
30 | <ErrorReport>prompt</ErrorReport> | ||
31 | <WarningLevel>4</WarningLevel> | ||
32 | </PropertyGroup> | ||
33 | <ItemGroup> | ||
34 | <Reference Include="System" /> | ||
35 | <Reference Include="System.Core" /> | ||
36 | <Reference Include="System.ServiceModel" /> | ||
37 | <Reference Include="System.Xml.Linq" /> | ||
38 | <Reference Include="System.Data.DataSetExtensions" /> | ||
39 | <Reference Include="Microsoft.CSharp" /> | ||
40 | <Reference Include="System.Data" /> | ||
41 | <Reference Include="System.Xml" /> | ||
42 | </ItemGroup> | ||
43 | <ItemGroup> | ||
44 | <Compile Include="EmailValidator.cs" /> | ||
45 | <Compile Include="Properties\AssemblyInfo.cs" /> | ||
46 | </ItemGroup> | ||
47 | <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> | ||
48 | <!-- To modify your build process, add your task inside one of the targets below and uncomment it. | ||
49 | Other similar extension points exist, see Microsoft.Common.targets. | ||
50 | <Target Name="BeforeBuild"> | ||
51 | </Target> | ||
52 | <Target Name="AfterBuild"> | ||
53 | </Target> | ||
54 | --> | ||
55 | </Project> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | using System.Reflection; | ||
2 | using System.Runtime.CompilerServices; | ||
3 | using System.Runtime.InteropServices; | ||
4 | |||
5 | // General Information about an assembly is controlled through the following | ||
6 | // set of attributes. Change these attribute values to modify the information | ||
7 | // associated with an assembly. | ||
8 | [assembly: AssemblyTitle("PerformanceService")] | ||
9 | [assembly: AssemblyDescription("")] | ||
10 | [assembly: AssemblyConfiguration("")] | ||
11 | [assembly: AssemblyCompany("Microsoft")] | ||
12 | [assembly: AssemblyProduct("PerformanceService")] | ||
13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2011")] | ||
14 | [assembly: AssemblyTrademark("")] | ||
15 | [assembly: AssemblyCulture("")] | ||
16 | |||
17 | // Setting ComVisible to false makes the types in this assembly not visible | ||
18 | // to COM components. If you need to access a type in this assembly from | ||
19 | // COM, set the ComVisible attribute to true on that type. | ||
20 | [assembly: ComVisible(false)] | ||
21 | |||
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM | ||
23 | [assembly: Guid("b1639d23-c73e-40f4-be3d-b5fd78bc002b")] | ||
24 | |||
25 | // Version information for an assembly consists of the following four values: | ||
26 | // | ||
27 | // Major Version | ||
28 | // Minor Version | ||
29 | // Build Number | ||
30 | // Revision | ||
31 | // | ||
32 | // You can specify all the values or you can default the Build and Revision Numbers | ||
33 | // by using the '*' as shown below: | ||
34 | // [assembly: AssemblyVersion("1.0.*")] | ||
35 | [assembly: AssemblyVersion("1.0.0.0")] | ||
36 | [assembly: AssemblyFileVersion("1.0.0.0")] |
PerformanceTestProject/AF01_Validate.webtest
0 → 100644
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <WebTest Name="AF01_Validate" Id="f596d6df-4c34-45cb-a0d4-ff04847890dd" Owner="" Priority="2147483647" Enabled="True" CssProjectStructure="" CssIteration="" Timeout="0" WorkItemIds="" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010" Description="" CredentialUserName="" CredentialPassword="" PreAuthenticate="True" Proxy="default" StopOnError="False" RecordedResultFile="AF01_Validate.6a8db5ff-429b-4974-af50-cb343710eaca.rec.webtestresult" ResultsLocale=""> | ||
3 | <Items> | ||
4 | <Request Method="POST" Guid="cec260fa-0c7c-4925-82a9-3ecad0512156" Version="1.1" Url="http://localhost:8080/EmailValidator" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False"> | ||
5 | <Headers> | ||
6 | <Header Name="SOAPAction" Value="http://tempuri.org/IEmailValidator/ValidateAddress" /> | ||
7 | </Headers> | ||
8 | <StringHttpBody ContentType="text/xml" InsertByteOrderMark="False">PABzADoARQBuAHYAZQBsAG8AcABlACAAeABtAGwAbgBzADoAcwA9ACIAaAB0AHQAcAA6AC8ALwBzAGMAaABlAG0AYQBzAC4AeABtAGwAcwBvAGEAcAAuAG8AcgBnAC8AcwBvAGEAcAAvAGUAbgB2AGUAbABvAHAAZQAvACIAPgA8AHMAOgBCAG8AZAB5AD4APABWAGEAbABpAGQAYQB0AGUAQQBkAGQAcgBlAHMAcwAgAHgAbQBsAG4AcwA9ACIAaAB0AHQAcAA6AC8ALwB0AGUAbQBwAHUAcgBpAC4AbwByAGcALwAiAD4APABlAG0AYQBpAGwAQQBkAGQAcgBlAHMAcwA+AGMAaAByAGkAcwB0AGkAYQBuAEAAZwBlAHIAZABlAHMALgBzAGUAPAAvAGUAbQBhAGkAbABBAGQAZAByAGUAcwBzAD4APAAvAFYAYQBsAGkAZABhAHQAZQBBAGQAZAByAGUAcwBzAD4APAAvAHMAOgBCAG8AZAB5AD4APAAvAHMAOgBFAG4AdgBlAGwAbwBwAGUAPgA=</StringHttpBody> | ||
9 | </Request> | ||
10 | </Items> | ||
11 | </WebTest> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <WebTest Name="AF02_CheckIfFull" Id="83c79875-4fb1-4e24-bf08-8f100b5065ce" Owner="" Priority="2147483647" Enabled="True" CssProjectStructure="" CssIteration="" Timeout="0" WorkItemIds="" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010" Description="" CredentialUserName="" CredentialPassword="" PreAuthenticate="True" Proxy="default" StopOnError="False" RecordedResultFile="AF01_Validate.6a8db5ff-429b-4974-af50-cb343710eaca.rec.webtestresult" ResultsLocale=""> | ||
3 | <Items> | ||
4 | <Request Method="POST" Guid="cec260fa-0c7c-4925-82a9-3ecad0512156" Version="1.1" Url="http://localhost:8080/EmailValidator" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False"> | ||
5 | <Headers> | ||
6 | <Header Name="SOAPAction" Value="http://tempuri.org/IEmailValidator/checkIfFull" /> | ||
7 | </Headers> | ||
8 | <StringHttpBody ContentType="text/xml" InsertByteOrderMark="False">PABzAG8AYQBwAGUAbgB2ADoARQBuAHYAZQBsAG8AcABlACAAeABtAGwAbgBzADoAcwBvAGEAcABlAG4AdgA9ACIAaAB0AHQAcAA6AC8ALwBzAGMAaABlAG0AYQBzAC4AeABtAGwAcwBvAGEAcAAuAG8AcgBnAC8AcwBvAGEAcAAvAGUAbgB2AGUAbABvAHAAZQAvACIAIAB4AG0AbABuAHMAOgB0AGUAbQA9ACIAaAB0AHQAcAA6AC8ALwB0AGUAbQBwAHUAcgBpAC4AbwByAGcALwAiAD4ADQAKACAAIAAgADwAcwBvAGEAcABlAG4AdgA6AEgAZQBhAGQAZQByAC8APgANAAoAIAAgACAAPABzAG8AYQBwAGUAbgB2ADoAQgBvAGQAeQA+AA0ACgAgACAAIAAgACAAIAA8AHQAZQBtADoAYwBoAGUAYwBrAEkAZgBGAHUAbABsAC8APgANAAoAIAAgACAAPAAvAHMAbwBhAHAAZQBuAHYAOgBCAG8AZAB5AD4ADQAKADwALwBzAG8AYQBwAGUAbgB2ADoARQBuAHYAZQBsAG8AcABlAD4A</StringHttpBody> | ||
9 | </Request> | ||
10 | </Items> | ||
11 | </WebTest> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <WebTest Name="AF02_CheckIfFull2" Id="60a8ff89-c9d5-46b9-bb91-0f6220db8b49" Owner="" Priority="2147483647" Enabled="True" CssProjectStructure="" CssIteration="" Timeout="0" WorkItemIds="" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010" Description="" CredentialUserName="" CredentialPassword="" PreAuthenticate="True" Proxy="default" StopOnError="False" RecordedResultFile="AF01_Validate.6a8db5ff-429b-4974-af50-cb343710eaca.rec.webtestresult" ResultsLocale=""> | ||
3 | <Items> | ||
4 | <Request Method="POST" Guid="cec260fa-0c7c-4925-82a9-3ecad0512156" Version="1.1" Url="http://localhost:8080/EmailValidator" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False"> | ||
5 | <Headers> | ||
6 | <Header Name="SOAPAction" Value="http://tempuri.org/IEmailValidator/checkIfFull2" /> | ||
7 | </Headers> | ||
8 | <StringHttpBody ContentType="text/xml" InsertByteOrderMark="False">PABzAG8AYQBwAGUAbgB2ADoARQBuAHYAZQBsAG8AcABlACAAeABtAGwAbgBzADoAcwBvAGEAcABlAG4AdgA9ACIAaAB0AHQAcAA6AC8ALwBzAGMAaABlAG0AYQBzAC4AeABtAGwAcwBvAGEAcAAuAG8AcgBnAC8AcwBvAGEAcAAvAGUAbgB2AGUAbABvAHAAZQAvACIAIAB4AG0AbABuAHMAOgB0AGUAbQA9ACIAaAB0AHQAcAA6AC8ALwB0AGUAbQBwAHUAcgBpAC4AbwByAGcALwAiAD4ADQAKACAAIAAgADwAcwBvAGEAcABlAG4AdgA6AEgAZQBhAGQAZQByAC8APgANAAoAIAAgACAAPABzAG8AYQBwAGUAbgB2ADoAQgBvAGQAeQA+AA0ACgAgACAAIAAgACAAIAA8AHQAZQBtADoAYwBoAGUAYwBrAEkAZgBGAHUAbABsADIALwA+AA0ACgAgACAAIAA8AC8AcwBvAGEAcABlAG4AdgA6AEIAbwBkAHkAPgANAAoAPAAvAHMAbwBhAHAAZQBuAHYAOgBFAG4AdgBlAGwAbwBwAGUAPgA=</StringHttpBody> | ||
9 | </Request> | ||
10 | </Items> | ||
11 | </WebTest> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <LoadTest Name="EmailValidator" Description="" Owner="" storage="c:\wcfdemo\wcfperformanceservicedemo\wcfperformanceservicedemo\performancetestproject\emailvalidator.loadtest" Priority="2147483647" Enabled="true" CssProjectStructure="" CssIteration="" DeploymentItemsEditable="" WorkItemIds="" TraceLevel="None" CurrentRunConfig="Run Settings1" Id="9671dd97-7509-48ad-941c-5fb2252e9254" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010"> | ||
3 | <Scenarios> | ||
4 | <Scenario Name="RefTest" DelayBetweenIterations="0" PercentNewUsers="0" IPSwitching="true" TestMixType="PercentageOfUsersRunning" ApplyDistributionToPacingDelay="true" MaxTestIterations="0" DisableDuringWarmup="false" DelayStartTime="0" AllowedAgents=""> | ||
5 | <ThinkProfile Value="0" Pattern="Off" /> | ||
6 | <LoadProfile Pattern="Step" InitialUsers="1" MaxUsers="20" StepUsers="1" StepDuration="30" StepRampTime="0" /> | ||
7 | <TestMix> | ||
8 | <TestProfile Name="AF01_Validate" Path="af01_validate.webtest" Id="f596d6df-4c34-45cb-a0d4-ff04847890dd" Percentage="0" Type="Microsoft.VisualStudio.TestTools.WebStress.DeclarativeWebTestElement, Microsoft.VisualStudio.QualityTools.LoadTest, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> | ||
9 | <TestProfile Name="AF02_CheckIfFull" Path="af02_checkiffull.webtest" Id="83c79875-4fb1-4e24-bf08-8f100b5065ce" Percentage="100" Type="Microsoft.VisualStudio.TestTools.WebStress.DeclarativeWebTestElement, Microsoft.VisualStudio.QualityTools.LoadTest, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> | ||
10 | <TestProfile Name="AF02_CheckIfFull2" Path="af02_checkiffull2.webtest" Id="60a8ff89-c9d5-46b9-bb91-0f6220db8b49" Percentage="0" Type="Microsoft.VisualStudio.TestTools.WebStress.DeclarativeWebTestElement, Microsoft.VisualStudio.QualityTools.LoadTest, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> | ||
11 | </TestMix> | ||
12 | <BrowserMix> | ||
13 | <BrowserProfile Percentage="100"> | ||
14 | <Browser Name="Internet Explorer 9.0" MaxConnections="6"> | ||
15 | <Headers> | ||
16 | <Header Name="User-Agent" Value="Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)" /> | ||
17 | <Header Name="Accept" Value="*/*" /> | ||
18 | <Header Name="Accept-Language" Value="{{$IEAcceptLanguage}}" /> | ||
19 | <Header Name="Accept-Encoding" Value="GZIP" /> | ||
20 | </Headers> | ||
21 | </Browser> | ||
22 | </BrowserProfile> | ||
23 | </BrowserMix> | ||
24 | <NetworkMix> | ||
25 | <NetworkProfile Percentage="100"> | ||
26 | <Network Name="LAN" BandwidthInKbps="1000000" NetworkProfileConfigurationXml="<Emulation><VirtualChannel name="defaultChannel"><FilterList/><VirtualLink instances="1" name="defaultLink"><LinkRule dir="upstream"><Bandwidth><Speed unit="kbps">1000000</Speed></Bandwidth></LinkRule><LinkRule dir="downstream"><Bandwidth><Speed unit="kbps">1000000</Speed></Bandwidth></LinkRule></VirtualLink></VirtualChannel></Emulation>" /> | ||
27 | </NetworkProfile> | ||
28 | </NetworkMix> | ||
29 | </Scenario> | ||
30 | </Scenarios> | ||
31 | <CounterSets> | ||
32 | <CounterSet Name=".NET Application" CounterSetType=".NET Application" LocId="CounterSet_DotNetApplication"> | ||
33 | <CounterCategories> | ||
34 | <CounterCategory Name="Memory"> | ||
35 | <Counters> | ||
36 | <Counter Name="% Committed Bytes In Use" Range="100" /> | ||
37 | <Counter Name="Available MBytes" RangeGroup="Memory Bytes" HigherIsBetter="true"> | ||
38 | <ThresholdRules> | ||
39 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
40 | <RuleParameters> | ||
41 | <RuleParameter Name="AlertIfOver" Value="False" /> | ||
42 | <RuleParameter Name="WarningThreshold" Value="100" /> | ||
43 | <RuleParameter Name="CriticalThreshold" Value="50" /> | ||
44 | </RuleParameters> | ||
45 | </ThresholdRule> | ||
46 | </ThresholdRules> | ||
47 | </Counter> | ||
48 | <Counter Name="Page Faults/sec" /> | ||
49 | <Counter Name="Pages/sec" /> | ||
50 | <Counter Name="Pool Paged Bytes" RangeGroup="Memory Bytes" /> | ||
51 | <Counter Name="Pool Nonpaged bytes" RangeGroup="Memory Bytes" /> | ||
52 | </Counters> | ||
53 | </CounterCategory> | ||
54 | <CounterCategory Name="Network Interface"> | ||
55 | <Counters> | ||
56 | <Counter Name="Bytes Received/sec" RangeGroup="Network Bytes" /> | ||
57 | <Counter Name="Bytes Sent/sec" RangeGroup="Network Bytes" /> | ||
58 | <Counter Name="Output Queue Length"> | ||
59 | <ThresholdRules> | ||
60 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
61 | <RuleParameters> | ||
62 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
63 | <RuleParameter Name="WarningThreshold" Value="1.5" /> | ||
64 | <RuleParameter Name="CriticalThreshold" Value="2" /> | ||
65 | </RuleParameters> | ||
66 | </ThresholdRule> | ||
67 | </ThresholdRules> | ||
68 | </Counter> | ||
69 | <Counter Name="Packets Received/sec" RangeGroup="Network Packets" /> | ||
70 | <Counter Name="Packets Sent/sec" RangeGroup="Network Packets" /> | ||
71 | <Counter Name="Current Bandwidth" RangeGroup="Network Bytes" /> | ||
72 | <Counter Name="Bytes Total/sec" RangeGroup="Network Bytes"> | ||
73 | <ThresholdRules> | ||
74 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareCounters, Microsoft.VisualStudio.QualityTools.LoadTest, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> | ||
75 | <RuleParameters> | ||
76 | <RuleParameter Name="DependentCategory" Value="Network Interface" /> | ||
77 | <RuleParameter Name="DependentCounter" Value="Current Bandwidth" /> | ||
78 | <RuleParameter Name="DependentInstance" Value="" /> | ||
79 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
80 | <RuleParameter Name="WarningThreshold" Value="0.6" /> | ||
81 | <RuleParameter Name="CriticalThreshold" Value="0.7" /> | ||
82 | </RuleParameters> | ||
83 | </ThresholdRule> | ||
84 | </ThresholdRules> | ||
85 | </Counter> | ||
86 | </Counters> | ||
87 | <Instances> | ||
88 | <Instance Name="*" /> | ||
89 | </Instances> | ||
90 | </CounterCategory> | ||
91 | <CounterCategory Name="PhysicalDisk"> | ||
92 | <Counters> | ||
93 | <Counter Name="% Disk Read Time" Range="100" /> | ||
94 | <Counter Name="% Disk Time" Range="100" /> | ||
95 | <Counter Name="% Disk Write Time" Range="100" /> | ||
96 | <Counter Name="% Idle Time" Range="100" HigherIsBetter="true"> | ||
97 | <ThresholdRules> | ||
98 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
99 | <RuleParameters> | ||
100 | <RuleParameter Name="AlertIfOver" Value="False" /> | ||
101 | <RuleParameter Name="WarningThreshold" Value="40" /> | ||
102 | <RuleParameter Name="CriticalThreshold" Value="20" /> | ||
103 | </RuleParameters> | ||
104 | </ThresholdRule> | ||
105 | </ThresholdRules> | ||
106 | </Counter> | ||
107 | <Counter Name="Avg. Disk Bytes/Read" RangeGroup="DiskBytesRate" /> | ||
108 | <Counter Name="Avg. Disk Bytes/Transfer" RangeGroup="DiskBytesRate" /> | ||
109 | <Counter Name="Avg. Disk Bytes/Write" RangeGroup="DiskBytesRate" /> | ||
110 | <Counter Name="Avg. Disk Queue Length" RangeGroup="Disk Queue Length" /> | ||
111 | <Counter Name="Avg. Disk Read Queue Length" RangeGroup="Disk Queue Length" /> | ||
112 | <Counter Name="Avg. Disk Write Queue Length" RangeGroup="Disk Queue Length" /> | ||
113 | <Counter Name="Current Disk Queue Length" RangeGroup="Disk Queue Length" /> | ||
114 | <Counter Name="Avg. Disk sec/Read" RangeGroup="Disk sec" /> | ||
115 | <Counter Name="Avg. Disk sec/Transfer" RangeGroup="Disk sec" /> | ||
116 | <Counter Name="Avg. Disk sec/Write" RangeGroup="Disk sec" /> | ||
117 | <Counter Name="Disk Bytes/sec" RangeGroup="Disk Bytes sec" /> | ||
118 | <Counter Name="Disk Read Bytes/sec" RangeGroup="Disk Bytes sec" /> | ||
119 | <Counter Name="Disk Reads/sec" RangeGroup="Disk Transfers sec" /> | ||
120 | <Counter Name="Disk Transfers/sec" RangeGroup="Disk Transfers sec" /> | ||
121 | <Counter Name="Disk Write Bytes/sec" RangeGroup="Disk Bytes sec" /> | ||
122 | <Counter Name="Disk Writes/sec" RangeGroup="Disk Transfers sec" /> | ||
123 | <Counter Name="Split IO/Sec" RangeGroup="Disk Transfers sec" /> | ||
124 | </Counters> | ||
125 | <Instances> | ||
126 | <Instance Name="*" /> | ||
127 | </Instances> | ||
128 | </CounterCategory> | ||
129 | <CounterCategory Name="Processor"> | ||
130 | <Counters> | ||
131 | <Counter Name="% Processor Time" Range="100"> | ||
132 | <ThresholdRules> | ||
133 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
134 | <RuleParameters> | ||
135 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
136 | <RuleParameter Name="WarningThreshold" Value="75" /> | ||
137 | <RuleParameter Name="CriticalThreshold" Value="90" /> | ||
138 | </RuleParameters> | ||
139 | </ThresholdRule> | ||
140 | </ThresholdRules> | ||
141 | </Counter> | ||
142 | <Counter Name="% Privileged Time" Range="100" /> | ||
143 | <Counter Name="% User Time" Range="100" /> | ||
144 | </Counters> | ||
145 | <Instances> | ||
146 | <Instance Name="_Total" /> | ||
147 | </Instances> | ||
148 | </CounterCategory> | ||
149 | <CounterCategory Name="System"> | ||
150 | <Counters> | ||
151 | <Counter Name="Context Switches/sec" /> | ||
152 | <Counter Name="Processes" /> | ||
153 | <Counter Name="Processor Queue Length" /> | ||
154 | <Counter Name="Threads" /> | ||
155 | </Counters> | ||
156 | </CounterCategory> | ||
157 | <CounterCategory Name="Process"> | ||
158 | <Counters> | ||
159 | <Counter Name="% Processor Time" RangeGroup="Processor Time" /> | ||
160 | <Counter Name="% Privileged Time" RangeGroup="Processor Time" /> | ||
161 | <Counter Name="% User Time" RangeGroup="Processor Time" /> | ||
162 | <Counter Name="Handle Count" /> | ||
163 | <Counter Name="Thread Count" /> | ||
164 | <Counter Name="Private Bytes" RangeGroup="Memory Bytes" /> | ||
165 | <Counter Name="Virtual Bytes" RangeGroup="Memory Bytes" /> | ||
166 | <Counter Name="Working Set" RangeGroup="Memory Bytes" /> | ||
167 | </Counters> | ||
168 | <Instances> | ||
169 | <Instance Name="*" /> | ||
170 | </Instances> | ||
171 | </CounterCategory> | ||
172 | <CounterCategory Name=".NET CLR Interop"> | ||
173 | <Counters> | ||
174 | <Counter Name="# of CCWs" /> | ||
175 | <Counter Name="# of marshalling" /> | ||
176 | <Counter Name="# of Stubs" /> | ||
177 | </Counters> | ||
178 | <Instances> | ||
179 | <Instance Name="_Global_" /> | ||
180 | </Instances> | ||
181 | </CounterCategory> | ||
182 | <CounterCategory Name=".NET CLR JIT"> | ||
183 | <Counters> | ||
184 | <Counter Name="# of Methods Jitted" /> | ||
185 | <Counter Name="% Time in Jit" Range="100"> | ||
186 | <ThresholdRules> | ||
187 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
188 | <RuleParameters> | ||
189 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
190 | <RuleParameter Name="WarningThreshold" Value="25" /> | ||
191 | <RuleParameter Name="CriticalThreshold" Value="50" /> | ||
192 | </RuleParameters> | ||
193 | </ThresholdRule> | ||
194 | </ThresholdRules> | ||
195 | </Counter> | ||
196 | <Counter Name="Standard Jit Failures" /> | ||
197 | </Counters> | ||
198 | <Instances> | ||
199 | <Instance Name="_Global_" /> | ||
200 | </Instances> | ||
201 | </CounterCategory> | ||
202 | <CounterCategory Name=".NET CLR Loading"> | ||
203 | <Counters> | ||
204 | <Counter Name="Bytes in Loader Heap" /> | ||
205 | <Counter Name="Current appdomains" /> | ||
206 | <Counter Name="Current Assemblies" /> | ||
207 | <Counter Name="Current Classes Loaded" /> | ||
208 | <Counter Name="Rate of appdomains" /> | ||
209 | <Counter Name="Rate of appdomains unloaded" /> | ||
210 | <Counter Name="Total # of Load Failures" /> | ||
211 | <Counter Name="Rate of Assemblies" /> | ||
212 | <Counter Name="Rate of Classes Loaded" /> | ||
213 | <Counter Name="Rate of Load Failures" /> | ||
214 | </Counters> | ||
215 | <Instances> | ||
216 | <Instance Name="_Global_" /> | ||
217 | </Instances> | ||
218 | </CounterCategory> | ||
219 | <CounterCategory Name=".NET CLR LocksAndThreads"> | ||
220 | <Counters> | ||
221 | <Counter Name="# of current logical Threads" RangeGroup="CLR Threads" /> | ||
222 | <Counter Name="# of current physical Threads" RangeGroup="CLR Threads" /> | ||
223 | <Counter Name="Contention Rate / sec"> | ||
224 | <ThresholdRules> | ||
225 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
226 | <RuleParameters> | ||
227 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
228 | <RuleParameter Name="WarningThreshold" Value="80" /> | ||
229 | <RuleParameter Name="CriticalThreshold" Value="120" /> | ||
230 | </RuleParameters> | ||
231 | </ThresholdRule> | ||
232 | </ThresholdRules> | ||
233 | </Counter> | ||
234 | <Counter Name="Current Queue Length"> | ||
235 | <ThresholdRules> | ||
236 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
237 | <RuleParameters> | ||
238 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
239 | <RuleParameter Name="WarningThreshold" Value="5" /> | ||
240 | <RuleParameter Name="CriticalThreshold" Value="10" /> | ||
241 | </RuleParameters> | ||
242 | </ThresholdRule> | ||
243 | </ThresholdRules> | ||
244 | </Counter> | ||
245 | </Counters> | ||
246 | <Instances> | ||
247 | <Instance Name="_Global_" /> | ||
248 | </Instances> | ||
249 | </CounterCategory> | ||
250 | <CounterCategory Name=".NET CLR Memory"> | ||
251 | <Counters> | ||
252 | <Counter Name="# Bytes in all Heaps" RangeGroup="CLR Memory Bytes" /> | ||
253 | <Counter Name="# GC Handles" /> | ||
254 | <Counter Name="# Gen 0 Collections" RangeGroup="CLR Memory Collections" /> | ||
255 | <Counter Name="# Gen 1 Collections" RangeGroup="CLR Memory Collections" /> | ||
256 | <Counter Name="# Gen 2 Collections" RangeGroup="CLR Memory Collections" /> | ||
257 | <Counter Name="# Induced GC" RangeGroup="CLR Memory Collections" /> | ||
258 | <Counter Name="# of Pinned Objects" /> | ||
259 | <Counter Name="# of Sink Blocks in use" /> | ||
260 | <Counter Name="# Total committed Bytes" RangeGroup="CLR Memory Bytes" /> | ||
261 | <Counter Name="# Total reserved Bytes" RangeGroup="CLR Memory Bytes" /> | ||
262 | <Counter Name="% Time in GC" Range="100"> | ||
263 | <ThresholdRules> | ||
264 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
265 | <RuleParameters> | ||
266 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
267 | <RuleParameter Name="WarningThreshold" Value="10" /> | ||
268 | <RuleParameter Name="CriticalThreshold" Value="25" /> | ||
269 | </RuleParameters> | ||
270 | </ThresholdRule> | ||
271 | </ThresholdRules> | ||
272 | </Counter> | ||
273 | <Counter Name="Gen 0 heap size" RangeGroup="CLR Heap Size" /> | ||
274 | <Counter Name="Gen 1 heap size" RangeGroup="CLR Heap Size" /> | ||
275 | <Counter Name="Gen 2 heap size" RangeGroup="CLR Heap Size" /> | ||
276 | <Counter Name="Large Object Heap size" RangeGroup="CLR Heap Size" /> | ||
277 | </Counters> | ||
278 | <Instances> | ||
279 | <Instance Name="_Global_" /> | ||
280 | </Instances> | ||
281 | </CounterCategory> | ||
282 | <CounterCategory Name=".NET CLR Remoting"> | ||
283 | <Counters> | ||
284 | <Counter Name="Remote Calls/sec" /> | ||
285 | <Counter Name="Total Remote Calls" /> | ||
286 | </Counters> | ||
287 | <Instances> | ||
288 | <Instance Name="_Global_" /> | ||
289 | </Instances> | ||
290 | </CounterCategory> | ||
291 | <CounterCategory Name=".NET CLR Security"> | ||
292 | <Counters> | ||
293 | <Counter Name="% Time in RT checks" Range="100"> | ||
294 | <ThresholdRules> | ||
295 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
296 | <RuleParameters> | ||
297 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
298 | <RuleParameter Name="WarningThreshold" Value="5" /> | ||
299 | <RuleParameter Name="CriticalThreshold" Value="10" /> | ||
300 | </RuleParameters> | ||
301 | </ThresholdRule> | ||
302 | </ThresholdRules> | ||
303 | </Counter> | ||
304 | <Counter Name="Stack Walk Depth" /> | ||
305 | <Counter Name="Total Runtime Checks" /> | ||
306 | </Counters> | ||
307 | <Instances> | ||
308 | <Instance Name="_Global_" /> | ||
309 | </Instances> | ||
310 | </CounterCategory> | ||
311 | </CounterCategories> | ||
312 | <DefaultCountersForAutomaticGraphs> | ||
313 | <DefaultCounter CategoryName="Processor" CounterName="% Processor Time" InstanceName="_Total" GraphName="" /> | ||
314 | <DefaultCounter CategoryName="Memory" CounterName="Available MBytes" InstanceName="" GraphName="" /> | ||
315 | </DefaultCountersForAutomaticGraphs> | ||
316 | </CounterSet> | ||
317 | <CounterSet Name="LoadTest" CounterSetType="LoadTest" LocId=""> | ||
318 | <CounterCategories> | ||
319 | <CounterCategory Name="LoadTest:Scenario"> | ||
320 | <Counters> | ||
321 | <Counter Name="User Load" HigherIsBetter="true" /> | ||
322 | <Counter Name="Tests Running" HigherIsBetter="true" /> | ||
323 | </Counters> | ||
324 | </CounterCategory> | ||
325 | <CounterCategory Name="LoadTest:Test"> | ||
326 | <Counters> | ||
327 | <Counter Name="Total Tests" HigherIsBetter="true" /> | ||
328 | <Counter Name="Passed Tests" HigherIsBetter="true" /> | ||
329 | <Counter Name="Failed Tests" /> | ||
330 | <Counter Name="Tests/Sec" HigherIsBetter="true" /> | ||
331 | <Counter Name="Passed Tests/Sec" HigherIsBetter="true" /> | ||
332 | <Counter Name="Failed Tests/Sec" /> | ||
333 | <Counter Name="Avg. Requests/Test" HigherIsBetter="true" /> | ||
334 | <Counter Name="Avg. Test Time" /> | ||
335 | <Counter Name="% Time in LoadTestPlugin" /> | ||
336 | <Counter Name="% Time in WebTest code" /> | ||
337 | <Counter Name="% Time in Rules" /> | ||
338 | </Counters> | ||
339 | </CounterCategory> | ||
340 | <CounterCategory Name="LoadTest:Transaction"> | ||
341 | <Counters> | ||
342 | <Counter Name="Total Transactions" HigherIsBetter="true" /> | ||
343 | <Counter Name="Avg. Transaction Time" /> | ||
344 | <Counter Name="Avg. Response Time" /> | ||
345 | <Counter Name="Transactions/Sec" HigherIsBetter="true" /> | ||
346 | </Counters> | ||
347 | </CounterCategory> | ||
348 | <CounterCategory Name="LoadTest:Errors"> | ||
349 | <Counters> | ||
350 | <Counter Name="Http Errors" /> | ||
351 | <Counter Name="Validation Rule Errors" /> | ||
352 | <Counter Name="Extraction Rule Errors" /> | ||
353 | <Counter Name="Requests Timed Out" /> | ||
354 | <Counter Name="Exceptions" /> | ||
355 | <Counter Name="Total Errors" /> | ||
356 | <Counter Name="Errors/Sec" /> | ||
357 | <Counter Name="Threshold Violations/Sec" /> | ||
358 | </Counters> | ||
359 | </CounterCategory> | ||
360 | <CounterCategory Name="LoadTest:Page"> | ||
361 | <Counters> | ||
362 | <Counter Name="Total Pages" HigherIsBetter="true" /> | ||
363 | <Counter Name="Avg. Page Time" /> | ||
364 | <Counter Name="Page Response Time Goal" HigherIsBetter="true" /> | ||
365 | <Counter Name="% Pages Meeting Goal" HigherIsBetter="true" /> | ||
366 | <Counter Name="Pages/Sec" HigherIsBetter="true" /> | ||
367 | </Counters> | ||
368 | </CounterCategory> | ||
369 | <CounterCategory Name="LoadTest:Request"> | ||
370 | <Counters> | ||
371 | <Counter Name="Total Requests" HigherIsBetter="true" /> | ||
372 | <Counter Name="Passed Requests" HigherIsBetter="true" /> | ||
373 | <Counter Name="Failed Requests" /> | ||
374 | <Counter Name="Cached Requests" HigherIsBetter="true" /> | ||
375 | <Counter Name="Requests/Sec" HigherIsBetter="true" /> | ||
376 | <Counter Name="Passed Requests/Sec" HigherIsBetter="true" /> | ||
377 | <Counter Name="Failed Requests/Sec" /> | ||
378 | <Counter Name="Avg. First Byte Time" /> | ||
379 | <Counter Name="Avg. Response Time" /> | ||
380 | <Counter Name="Avg. Connection Wait Time"> | ||
381 | <ThresholdRules> | ||
382 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareCounters, Microsoft.VisualStudio.QualityTools.LoadTest, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> | ||
383 | <RuleParameters> | ||
384 | <RuleParameter Name="DependentCategory" Value="LoadTest:Page" /> | ||
385 | <RuleParameter Name="DependentCounter" Value="Avg. Page Time" /> | ||
386 | <RuleParameter Name="DependentInstance" Value="_Total" /> | ||
387 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
388 | <RuleParameter Name="WarningThreshold" Value="0.25" /> | ||
389 | <RuleParameter Name="CriticalThreshold" Value="0.5" /> | ||
390 | </RuleParameters> | ||
391 | </ThresholdRule> | ||
392 | </ThresholdRules> | ||
393 | </Counter> | ||
394 | <Counter Name="Avg. Content Length" /> | ||
395 | </Counters> | ||
396 | </CounterCategory> | ||
397 | <CounterCategory Name="LoadTest:LogEntries"> | ||
398 | <Counters> | ||
399 | <Counter Name="Total Log Entries" /> | ||
400 | <Counter Name="Log Entries/Sec" /> | ||
401 | </Counters> | ||
402 | </CounterCategory> | ||
403 | </CounterCategories> | ||
404 | </CounterSet> | ||
405 | <CounterSet Name="Controller" CounterSetType="Controller" LocId="CounterSet_Controller"> | ||
406 | <CounterCategories> | ||
407 | <CounterCategory Name="Memory"> | ||
408 | <Counters> | ||
409 | <Counter Name="% Committed Bytes In Use" Range="100" /> | ||
410 | <Counter Name="Available MBytes" RangeGroup="Memory Bytes" HigherIsBetter="true"> | ||
411 | <ThresholdRules> | ||
412 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
413 | <RuleParameters> | ||
414 | <RuleParameter Name="AlertIfOver" Value="False" /> | ||
415 | <RuleParameter Name="WarningThreshold" Value="100" /> | ||
416 | <RuleParameter Name="CriticalThreshold" Value="50" /> | ||
417 | </RuleParameters> | ||
418 | </ThresholdRule> | ||
419 | </ThresholdRules> | ||
420 | </Counter> | ||
421 | <Counter Name="Page Faults/sec" /> | ||
422 | <Counter Name="Pages/sec" /> | ||
423 | <Counter Name="Pool Paged Bytes" RangeGroup="Memory Bytes" /> | ||
424 | <Counter Name="Pool Nonpaged bytes" RangeGroup="Memory Bytes" /> | ||
425 | </Counters> | ||
426 | </CounterCategory> | ||
427 | <CounterCategory Name="Network Interface"> | ||
428 | <Counters> | ||
429 | <Counter Name="Bytes Received/sec" RangeGroup="Network Bytes" /> | ||
430 | <Counter Name="Bytes Sent/sec" RangeGroup="Network Bytes" /> | ||
431 | <Counter Name="Output Queue Length"> | ||
432 | <ThresholdRules> | ||
433 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
434 | <RuleParameters> | ||
435 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
436 | <RuleParameter Name="WarningThreshold" Value="1.5" /> | ||
437 | <RuleParameter Name="CriticalThreshold" Value="2" /> | ||
438 | </RuleParameters> | ||
439 | </ThresholdRule> | ||
440 | </ThresholdRules> | ||
441 | </Counter> | ||
442 | <Counter Name="Packets Received/sec" RangeGroup="Network Packets" /> | ||
443 | <Counter Name="Packets Sent/sec" RangeGroup="Network Packets" /> | ||
444 | <Counter Name="Current Bandwidth" RangeGroup="Network Bytes" /> | ||
445 | <Counter Name="Bytes Total/sec" RangeGroup="Network Bytes"> | ||
446 | <ThresholdRules> | ||
447 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareCounters, Microsoft.VisualStudio.QualityTools.LoadTest, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> | ||
448 | <RuleParameters> | ||
449 | <RuleParameter Name="DependentCategory" Value="Network Interface" /> | ||
450 | <RuleParameter Name="DependentCounter" Value="Current Bandwidth" /> | ||
451 | <RuleParameter Name="DependentInstance" Value="" /> | ||
452 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
453 | <RuleParameter Name="WarningThreshold" Value="0.6" /> | ||
454 | <RuleParameter Name="CriticalThreshold" Value="0.7" /> | ||
455 | </RuleParameters> | ||
456 | </ThresholdRule> | ||
457 | </ThresholdRules> | ||
458 | </Counter> | ||
459 | </Counters> | ||
460 | <Instances> | ||
461 | <Instance Name="*" /> | ||
462 | </Instances> | ||
463 | </CounterCategory> | ||
464 | <CounterCategory Name="PhysicalDisk"> | ||
465 | <Counters> | ||
466 | <Counter Name="% Disk Read Time" Range="100" /> | ||
467 | <Counter Name="% Disk Time" Range="100" /> | ||
468 | <Counter Name="% Disk Write Time" Range="100" /> | ||
469 | <Counter Name="% Idle Time" Range="100" HigherIsBetter="true"> | ||
470 | <ThresholdRules> | ||
471 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
472 | <RuleParameters> | ||
473 | <RuleParameter Name="AlertIfOver" Value="False" /> | ||
474 | <RuleParameter Name="WarningThreshold" Value="40" /> | ||
475 | <RuleParameter Name="CriticalThreshold" Value="20" /> | ||
476 | </RuleParameters> | ||
477 | </ThresholdRule> | ||
478 | </ThresholdRules> | ||
479 | </Counter> | ||
480 | <Counter Name="Avg. Disk Bytes/Read" RangeGroup="DiskBytesRate" /> | ||
481 | <Counter Name="Avg. Disk Bytes/Transfer" RangeGroup="DiskBytesRate" /> | ||
482 | <Counter Name="Avg. Disk Bytes/Write" RangeGroup="DiskBytesRate" /> | ||
483 | <Counter Name="Avg. Disk Queue Length" RangeGroup="Disk Queue Length" /> | ||
484 | <Counter Name="Avg. Disk Read Queue Length" RangeGroup="Disk Queue Length" /> | ||
485 | <Counter Name="Avg. Disk Write Queue Length" RangeGroup="Disk Queue Length" /> | ||
486 | <Counter Name="Current Disk Queue Length" RangeGroup="Disk Queue Length" /> | ||
487 | <Counter Name="Avg. Disk sec/Read" RangeGroup="Disk sec" /> | ||
488 | <Counter Name="Avg. Disk sec/Transfer" RangeGroup="Disk sec" /> | ||
489 | <Counter Name="Avg. Disk sec/Write" RangeGroup="Disk sec" /> | ||
490 | <Counter Name="Disk Bytes/sec" RangeGroup="Disk Bytes sec" /> | ||
491 | <Counter Name="Disk Read Bytes/sec" RangeGroup="Disk Bytes sec" /> | ||
492 | <Counter Name="Disk Reads/sec" RangeGroup="Disk Transfers sec" /> | ||
493 | <Counter Name="Disk Transfers/sec" RangeGroup="Disk Transfers sec" /> | ||
494 | <Counter Name="Disk Write Bytes/sec" RangeGroup="Disk Bytes sec" /> | ||
495 | <Counter Name="Disk Writes/sec" RangeGroup="Disk Transfers sec" /> | ||
496 | <Counter Name="Split IO/Sec" RangeGroup="Disk Transfers sec" /> | ||
497 | </Counters> | ||
498 | <Instances> | ||
499 | <Instance Name="*" /> | ||
500 | </Instances> | ||
501 | </CounterCategory> | ||
502 | <CounterCategory Name="Processor"> | ||
503 | <Counters> | ||
504 | <Counter Name="% Processor Time" Range="100"> | ||
505 | <ThresholdRules> | ||
506 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
507 | <RuleParameters> | ||
508 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
509 | <RuleParameter Name="WarningThreshold" Value="75" /> | ||
510 | <RuleParameter Name="CriticalThreshold" Value="90" /> | ||
511 | </RuleParameters> | ||
512 | </ThresholdRule> | ||
513 | </ThresholdRules> | ||
514 | </Counter> | ||
515 | <Counter Name="% Privileged Time" Range="100" /> | ||
516 | <Counter Name="% User Time" Range="100" /> | ||
517 | </Counters> | ||
518 | <Instances> | ||
519 | <Instance Name="_Total" /> | ||
520 | </Instances> | ||
521 | </CounterCategory> | ||
522 | <CounterCategory Name="System"> | ||
523 | <Counters> | ||
524 | <Counter Name="Context Switches/sec" /> | ||
525 | <Counter Name="Processes" /> | ||
526 | <Counter Name="Processor Queue Length" /> | ||
527 | <Counter Name="Threads" /> | ||
528 | </Counters> | ||
529 | </CounterCategory> | ||
530 | <CounterCategory Name="Process"> | ||
531 | <Counters> | ||
532 | <Counter Name="% Processor Time" RangeGroup="Processor Time" /> | ||
533 | <Counter Name="% Privileged Time" RangeGroup="Processor Time" /> | ||
534 | <Counter Name="% User Time" RangeGroup="Processor Time" /> | ||
535 | <Counter Name="Handle Count" /> | ||
536 | <Counter Name="Thread Count" /> | ||
537 | <Counter Name="Private Bytes" RangeGroup="Memory Bytes" /> | ||
538 | <Counter Name="Virtual Bytes" RangeGroup="Memory Bytes" /> | ||
539 | <Counter Name="Working Set" RangeGroup="Memory Bytes" /> | ||
540 | </Counters> | ||
541 | <Instances> | ||
542 | <Instance Name="QTController" /> | ||
543 | </Instances> | ||
544 | </CounterCategory> | ||
545 | </CounterCategories> | ||
546 | <DefaultCountersForAutomaticGraphs> | ||
547 | <DefaultCounter CategoryName="Processor" CounterName="% Processor Time" InstanceName="_Total" GraphName="" /> | ||
548 | <DefaultCounter CategoryName="Memory" CounterName="Available MBytes" InstanceName="" GraphName="" /> | ||
549 | </DefaultCountersForAutomaticGraphs> | ||
550 | </CounterSet> | ||
551 | <CounterSet Name="Agent" CounterSetType="Agent" LocId="CounterSet_Agent"> | ||
552 | <CounterCategories> | ||
553 | <CounterCategory Name="Memory"> | ||
554 | <Counters> | ||
555 | <Counter Name="% Committed Bytes In Use" Range="100" /> | ||
556 | <Counter Name="Available MBytes" RangeGroup="Memory Bytes" HigherIsBetter="true"> | ||
557 | <ThresholdRules> | ||
558 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
559 | <RuleParameters> | ||
560 | <RuleParameter Name="AlertIfOver" Value="False" /> | ||
561 | <RuleParameter Name="WarningThreshold" Value="100" /> | ||
562 | <RuleParameter Name="CriticalThreshold" Value="50" /> | ||
563 | </RuleParameters> | ||
564 | </ThresholdRule> | ||
565 | </ThresholdRules> | ||
566 | </Counter> | ||
567 | <Counter Name="Page Faults/sec" /> | ||
568 | <Counter Name="Pages/sec" /> | ||
569 | <Counter Name="Pool Paged Bytes" RangeGroup="Memory Bytes" /> | ||
570 | <Counter Name="Pool Nonpaged bytes" RangeGroup="Memory Bytes" /> | ||
571 | </Counters> | ||
572 | </CounterCategory> | ||
573 | <CounterCategory Name="Network Interface"> | ||
574 | <Counters> | ||
575 | <Counter Name="Bytes Received/sec" RangeGroup="Network Bytes" /> | ||
576 | <Counter Name="Bytes Sent/sec" RangeGroup="Network Bytes" /> | ||
577 | <Counter Name="Output Queue Length"> | ||
578 | <ThresholdRules> | ||
579 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
580 | <RuleParameters> | ||
581 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
582 | <RuleParameter Name="WarningThreshold" Value="1.5" /> | ||
583 | <RuleParameter Name="CriticalThreshold" Value="2" /> | ||
584 | </RuleParameters> | ||
585 | </ThresholdRule> | ||
586 | </ThresholdRules> | ||
587 | </Counter> | ||
588 | <Counter Name="Packets Received/sec" RangeGroup="Network Packets" /> | ||
589 | <Counter Name="Packets Sent/sec" RangeGroup="Network Packets" /> | ||
590 | <Counter Name="Current Bandwidth" RangeGroup="Network Bytes" /> | ||
591 | <Counter Name="Bytes Total/sec" RangeGroup="Network Bytes"> | ||
592 | <ThresholdRules> | ||
593 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareCounters, Microsoft.VisualStudio.QualityTools.LoadTest, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> | ||
594 | <RuleParameters> | ||
595 | <RuleParameter Name="DependentCategory" Value="Network Interface" /> | ||
596 | <RuleParameter Name="DependentCounter" Value="Current Bandwidth" /> | ||
597 | <RuleParameter Name="DependentInstance" Value="" /> | ||
598 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
599 | <RuleParameter Name="WarningThreshold" Value="0.6" /> | ||
600 | <RuleParameter Name="CriticalThreshold" Value="0.7" /> | ||
601 | </RuleParameters> | ||
602 | </ThresholdRule> | ||
603 | </ThresholdRules> | ||
604 | </Counter> | ||
605 | </Counters> | ||
606 | <Instances> | ||
607 | <Instance Name="*" /> | ||
608 | </Instances> | ||
609 | </CounterCategory> | ||
610 | <CounterCategory Name="PhysicalDisk"> | ||
611 | <Counters> | ||
612 | <Counter Name="% Disk Read Time" Range="100" /> | ||
613 | <Counter Name="% Disk Time" Range="100" /> | ||
614 | <Counter Name="% Disk Write Time" Range="100" /> | ||
615 | <Counter Name="% Idle Time" Range="100" HigherIsBetter="true"> | ||
616 | <ThresholdRules> | ||
617 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
618 | <RuleParameters> | ||
619 | <RuleParameter Name="AlertIfOver" Value="False" /> | ||
620 | <RuleParameter Name="WarningThreshold" Value="40" /> | ||
621 | <RuleParameter Name="CriticalThreshold" Value="20" /> | ||
622 | </RuleParameters> | ||
623 | </ThresholdRule> | ||
624 | </ThresholdRules> | ||
625 | </Counter> | ||
626 | <Counter Name="Avg. Disk Bytes/Read" RangeGroup="DiskBytesRate" /> | ||
627 | <Counter Name="Avg. Disk Bytes/Transfer" RangeGroup="DiskBytesRate" /> | ||
628 | <Counter Name="Avg. Disk Bytes/Write" RangeGroup="DiskBytesRate" /> | ||
629 | <Counter Name="Avg. Disk Queue Length" RangeGroup="Disk Queue Length" /> | ||
630 | <Counter Name="Avg. Disk Read Queue Length" RangeGroup="Disk Queue Length" /> | ||
631 | <Counter Name="Avg. Disk Write Queue Length" RangeGroup="Disk Queue Length" /> | ||
632 | <Counter Name="Current Disk Queue Length" RangeGroup="Disk Queue Length" /> | ||
633 | <Counter Name="Avg. Disk sec/Read" RangeGroup="Disk sec" /> | ||
634 | <Counter Name="Avg. Disk sec/Transfer" RangeGroup="Disk sec" /> | ||
635 | <Counter Name="Avg. Disk sec/Write" RangeGroup="Disk sec" /> | ||
636 | <Counter Name="Disk Bytes/sec" RangeGroup="Disk Bytes sec" /> | ||
637 | <Counter Name="Disk Read Bytes/sec" RangeGroup="Disk Bytes sec" /> | ||
638 | <Counter Name="Disk Reads/sec" RangeGroup="Disk Transfers sec" /> | ||
639 | <Counter Name="Disk Transfers/sec" RangeGroup="Disk Transfers sec" /> | ||
640 | <Counter Name="Disk Write Bytes/sec" RangeGroup="Disk Bytes sec" /> | ||
641 | <Counter Name="Disk Writes/sec" RangeGroup="Disk Transfers sec" /> | ||
642 | <Counter Name="Split IO/Sec" RangeGroup="Disk Transfers sec" /> | ||
643 | </Counters> | ||
644 | <Instances> | ||
645 | <Instance Name="*" /> | ||
646 | </Instances> | ||
647 | </CounterCategory> | ||
648 | <CounterCategory Name="Processor"> | ||
649 | <Counters> | ||
650 | <Counter Name="% Processor Time" Range="100"> | ||
651 | <ThresholdRules> | ||
652 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
653 | <RuleParameters> | ||
654 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
655 | <RuleParameter Name="WarningThreshold" Value="75" /> | ||
656 | <RuleParameter Name="CriticalThreshold" Value="90" /> | ||
657 | </RuleParameters> | ||
658 | </ThresholdRule> | ||
659 | </ThresholdRules> | ||
660 | </Counter> | ||
661 | <Counter Name="% Privileged Time" Range="100" /> | ||
662 | <Counter Name="% User Time" Range="100" /> | ||
663 | </Counters> | ||
664 | <Instances> | ||
665 | <Instance Name="0" /> | ||
666 | <Instance Name="_Total" /> | ||
667 | </Instances> | ||
668 | </CounterCategory> | ||
669 | <CounterCategory Name="System"> | ||
670 | <Counters> | ||
671 | <Counter Name="Context Switches/sec" /> | ||
672 | <Counter Name="Processes" /> | ||
673 | <Counter Name="Processor Queue Length" /> | ||
674 | <Counter Name="Threads" /> | ||
675 | </Counters> | ||
676 | </CounterCategory> | ||
677 | <CounterCategory Name="Process"> | ||
678 | <Counters> | ||
679 | <Counter Name="% Processor Time" RangeGroup="Processor Time" /> | ||
680 | <Counter Name="% Privileged Time" RangeGroup="Processor Time" /> | ||
681 | <Counter Name="% User Time" RangeGroup="Processor Time" /> | ||
682 | <Counter Name="Handle Count" /> | ||
683 | <Counter Name="Thread Count" /> | ||
684 | <Counter Name="Private Bytes" RangeGroup="Memory Bytes" /> | ||
685 | <Counter Name="Virtual Bytes" RangeGroup="Memory Bytes" /> | ||
686 | <Counter Name="Working Set" RangeGroup="Memory Bytes" /> | ||
687 | </Counters> | ||
688 | <Instances> | ||
689 | <Instance Name="devenv" /> | ||
690 | <Instance Name="QTAgentService" /> | ||
691 | <Instance Name="QTAgent" /> | ||
692 | <Instance Name="QTAgent32" /> | ||
693 | <Instance Name="QTDCAgent" /> | ||
694 | <Instance Name="QTDCAgent32" /> | ||
695 | </Instances> | ||
696 | </CounterCategory> | ||
697 | </CounterCategories> | ||
698 | <DefaultCountersForAutomaticGraphs> | ||
699 | <DefaultCounter CategoryName="Processor" CounterName="% Processor Time" InstanceName="0" GraphName="" RunType="Local" /> | ||
700 | <DefaultCounter CategoryName="Processor" CounterName="% Processor Time" InstanceName="_Total" GraphName="" RunType="Remote" /> | ||
701 | <DefaultCounter CategoryName="Memory" CounterName="Available MBytes" InstanceName="" GraphName="" /> | ||
702 | </DefaultCountersForAutomaticGraphs> | ||
703 | </CounterSet> | ||
704 | <CounterSet Name="SQL" CounterSetType="SQL" LocId="CounterSet_SQL"> | ||
705 | <CounterCategories> | ||
706 | <CounterCategory Name="Memory"> | ||
707 | <Counters> | ||
708 | <Counter Name="% Committed Bytes In Use" Range="100" /> | ||
709 | <Counter Name="Available MBytes" RangeGroup="Memory Bytes" HigherIsBetter="true"> | ||
710 | <ThresholdRules> | ||
711 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
712 | <RuleParameters> | ||
713 | <RuleParameter Name="AlertIfOver" Value="False" /> | ||
714 | <RuleParameter Name="WarningThreshold" Value="100" /> | ||
715 | <RuleParameter Name="CriticalThreshold" Value="50" /> | ||
716 | </RuleParameters> | ||
717 | </ThresholdRule> | ||
718 | </ThresholdRules> | ||
719 | </Counter> | ||
720 | <Counter Name="Page Faults/sec" /> | ||
721 | <Counter Name="Pages/sec" /> | ||
722 | <Counter Name="Pool Paged Bytes" RangeGroup="Memory Bytes" /> | ||
723 | <Counter Name="Pool Nonpaged bytes" RangeGroup="Memory Bytes" /> | ||
724 | </Counters> | ||
725 | </CounterCategory> | ||
726 | <CounterCategory Name="Network Interface"> | ||
727 | <Counters> | ||
728 | <Counter Name="Bytes Received/sec" RangeGroup="Network Bytes" /> | ||
729 | <Counter Name="Bytes Sent/sec" RangeGroup="Network Bytes" /> | ||
730 | <Counter Name="Output Queue Length"> | ||
731 | <ThresholdRules> | ||
732 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
733 | <RuleParameters> | ||
734 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
735 | <RuleParameter Name="WarningThreshold" Value="1.5" /> | ||
736 | <RuleParameter Name="CriticalThreshold" Value="2" /> | ||
737 | </RuleParameters> | ||
738 | </ThresholdRule> | ||
739 | </ThresholdRules> | ||
740 | </Counter> | ||
741 | <Counter Name="Packets Received/sec" RangeGroup="Network Packets" /> | ||
742 | <Counter Name="Packets Sent/sec" RangeGroup="Network Packets" /> | ||
743 | <Counter Name="Current Bandwidth" RangeGroup="Network Bytes" /> | ||
744 | <Counter Name="Bytes Total/sec" RangeGroup="Network Bytes"> | ||
745 | <ThresholdRules> | ||
746 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareCounters, Microsoft.VisualStudio.QualityTools.LoadTest, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> | ||
747 | <RuleParameters> | ||
748 | <RuleParameter Name="DependentCategory" Value="Network Interface" /> | ||
749 | <RuleParameter Name="DependentCounter" Value="Current Bandwidth" /> | ||
750 | <RuleParameter Name="DependentInstance" Value="" /> | ||
751 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
752 | <RuleParameter Name="WarningThreshold" Value="0.6" /> | ||
753 | <RuleParameter Name="CriticalThreshold" Value="0.7" /> | ||
754 | </RuleParameters> | ||
755 | </ThresholdRule> | ||
756 | </ThresholdRules> | ||
757 | </Counter> | ||
758 | </Counters> | ||
759 | <Instances> | ||
760 | <Instance Name="*" /> | ||
761 | </Instances> | ||
762 | </CounterCategory> | ||
763 | <CounterCategory Name="PhysicalDisk"> | ||
764 | <Counters> | ||
765 | <Counter Name="% Disk Read Time" Range="100" /> | ||
766 | <Counter Name="% Disk Time" Range="100" /> | ||
767 | <Counter Name="% Disk Write Time" Range="100" /> | ||
768 | <Counter Name="% Idle Time" Range="100" HigherIsBetter="true"> | ||
769 | <ThresholdRules> | ||
770 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
771 | <RuleParameters> | ||
772 | <RuleParameter Name="AlertIfOver" Value="False" /> | ||
773 | <RuleParameter Name="WarningThreshold" Value="40" /> | ||
774 | <RuleParameter Name="CriticalThreshold" Value="20" /> | ||
775 | </RuleParameters> | ||
776 | </ThresholdRule> | ||
777 | </ThresholdRules> | ||
778 | </Counter> | ||
779 | <Counter Name="Avg. Disk Bytes/Read" RangeGroup="DiskBytesRate" /> | ||
780 | <Counter Name="Avg. Disk Bytes/Transfer" RangeGroup="DiskBytesRate" /> | ||
781 | <Counter Name="Avg. Disk Bytes/Write" RangeGroup="DiskBytesRate" /> | ||
782 | <Counter Name="Avg. Disk Queue Length" RangeGroup="Disk Queue Length" /> | ||
783 | <Counter Name="Avg. Disk Read Queue Length" RangeGroup="Disk Queue Length" /> | ||
784 | <Counter Name="Avg. Disk Write Queue Length" RangeGroup="Disk Queue Length" /> | ||
785 | <Counter Name="Current Disk Queue Length" RangeGroup="Disk Queue Length" /> | ||
786 | <Counter Name="Avg. Disk sec/Read" RangeGroup="Disk sec" /> | ||
787 | <Counter Name="Avg. Disk sec/Transfer" RangeGroup="Disk sec" /> | ||
788 | <Counter Name="Avg. Disk sec/Write" RangeGroup="Disk sec" /> | ||
789 | <Counter Name="Disk Bytes/sec" RangeGroup="Disk Bytes sec" /> | ||
790 | <Counter Name="Disk Read Bytes/sec" RangeGroup="Disk Bytes sec" /> | ||
791 | <Counter Name="Disk Reads/sec" RangeGroup="Disk Transfers sec" /> | ||
792 | <Counter Name="Disk Transfers/sec" RangeGroup="Disk Transfers sec" /> | ||
793 | <Counter Name="Disk Write Bytes/sec" RangeGroup="Disk Bytes sec" /> | ||
794 | <Counter Name="Disk Writes/sec" RangeGroup="Disk Transfers sec" /> | ||
795 | <Counter Name="Split IO/Sec" RangeGroup="Disk Transfers sec" /> | ||
796 | </Counters> | ||
797 | <Instances> | ||
798 | <Instance Name="*" /> | ||
799 | </Instances> | ||
800 | </CounterCategory> | ||
801 | <CounterCategory Name="Processor"> | ||
802 | <Counters> | ||
803 | <Counter Name="% Processor Time" Range="100"> | ||
804 | <ThresholdRules> | ||
805 | <ThresholdRule Classname="Microsoft.VisualStudio.TestTools.WebStress.Rules.ThresholdRuleCompareConstant, Microsoft.VisualStudio.QualityTools.LoadTest"> | ||
806 | <RuleParameters> | ||
807 | <RuleParameter Name="AlertIfOver" Value="True" /> | ||
808 | <RuleParameter Name="WarningThreshold" Value="75" /> | ||
809 | <RuleParameter Name="CriticalThreshold" Value="90" /> | ||
810 | </RuleParameters> | ||
811 | </ThresholdRule> | ||
812 | </ThresholdRules> | ||
813 | </Counter> | ||
814 | <Counter Name="% Privileged Time" Range="100" /> | ||
815 | <Counter Name="% User Time" Range="100" /> | ||
816 | </Counters> | ||
817 | <Instances> | ||
818 | <Instance Name="_Total" /> | ||
819 | </Instances> | ||
820 | </CounterCategory> | ||
821 | <CounterCategory Name="System"> | ||
822 | <Counters> | ||
823 | <Counter Name="Context Switches/sec" /> | ||
824 | <Counter Name="Processes" /> | ||
825 | <Counter Name="Processor Queue Length" /> | ||
826 | <Counter Name="Threads" /> | ||
827 | </Counters> | ||
828 | </CounterCategory> | ||
829 | <CounterCategory Name="Process"> | ||
830 | <Counters> | ||
831 | <Counter Name="% Processor Time" RangeGroup="Processor Time" /> | ||
832 | <Counter Name="% Privileged Time" RangeGroup="Processor Time" /> | ||
833 | <Counter Name="% User Time" RangeGroup="Processor Time" /> | ||
834 | <Counter Name="Handle Count" /> | ||
835 | <Counter Name="Thread Count" /> | ||
836 | <Counter Name="Private Bytes" RangeGroup="Memory Bytes" /> | ||
837 | <Counter Name="Virtual Bytes" RangeGroup="Memory Bytes" /> | ||
838 | <Counter Name="Working Set" RangeGroup="Memory Bytes" /> | ||
839 | </Counters> | ||
840 | <Instances> | ||
841 | <Instance Name="sqlservr" /> | ||
842 | <Instance Name="sqlmangr" /> | ||
843 | <Instance Name="sqlwriter" /> | ||
844 | </Instances> | ||
845 | </CounterCategory> | ||
846 | <CounterCategory Name="SQLServer:Buffer Partition"> | ||
847 | <Counters> | ||
848 | <Counter Name="Free list empty/sec" /> | ||
849 | <Counter Name="Free list requests/sec" /> | ||
850 | <Counter Name="Free pages" /> | ||
851 | </Counters> | ||
852 | <Instances> | ||
853 | <Instance Name="*" /> | ||
854 | </Instances> | ||
855 | </CounterCategory> | ||
856 | <CounterCategory Name="SQLServer:Databases"> | ||
857 | <Counters> | ||
858 | <Counter Name="Active Transactions" /> | ||
859 | <Counter Name="Log Cache Hit Ratio" HigherIsBetter="true" /> | ||
860 | <Counter Name="Log Cache Reads/sec" RangeGroup="SQL Cache Rates" /> | ||
861 | <Counter Name="Log Flush Waits/sec" RangeGroup="SQL Cache Rates" /> | ||
862 | <Counter Name="Log Flushes/sec" RangeGroup="SQL Cache Rates" /> | ||
863 | <Counter Name="Log Truncations" /> | ||
864 | <Counter Name="Transactions/sec" HigherIsBetter="true" /> | ||
865 | </Counters> | ||
866 | <Instances> | ||
867 | <Instance Name="_Total" /> | ||
868 | </Instances> | ||
869 | </CounterCategory> | ||
870 | <CounterCategory Name="SQLServer:General Statistics"> | ||
871 | <Counters> | ||
872 | <Counter Name="Logins/sec" HigherIsBetter="true" /> | ||
873 | <Counter Name="Logouts/sec" HigherIsBetter="true" /> | ||
874 | <Counter Name="User Connections" HigherIsBetter="true" /> | ||
875 | </Counters> | ||
876 | </CounterCategory> | ||
877 | <CounterCategory Name="SQLServer:Latches"> | ||
878 | <Counters> | ||
879 | <Counter Name="Average Latch Wait Time (ms)" /> | ||
880 | <Counter Name="Latch Waits/sec" /> | ||
881 | </Counters> | ||
882 | </CounterCategory> | ||
883 | <CounterCategory Name="SQLServer:Locks"> | ||
884 | <Counters> | ||
885 | <Counter Name="Average Wait Time (ms)" /> | ||
886 | <Counter Name="Lock Timeouts/sec" /> | ||
887 | <Counter Name="Lock Wait Time (ms)" /> | ||
888 | <Counter Name="Lock Waits/sec" /> | ||
889 | <Counter Name="Number of Deadlocks/sec" /> | ||
890 | </Counters> | ||
891 | <Instances> | ||
892 | <Instance Name="_Total" /> | ||
893 | </Instances> | ||
894 | </CounterCategory> | ||
895 | <CounterCategory Name="SQLServer:SQL Statistics"> | ||
896 | <Counters> | ||
897 | <Counter Name="Auto-Param Attempts/sec" RangeGroup="SQL AutoParam Rate" /> | ||
898 | <Counter Name="Batch Requests/sec" /> | ||
899 | <Counter Name="Failed Auto-Params/sec" RangeGroup="SQL AutoParam Rate" /> | ||
900 | <Counter Name="Safe Auto-Params/sec" RangeGroup="SQL AutoParam Rate" /> | ||
901 | <Counter Name="SQL Compilations/sec" RangeGroup="SQL Compilations Rate" /> | ||
902 | <Counter Name="SQL Re-Compilations/sec" RangeGroup="SQL Compilations Rate" /> | ||
903 | <Counter Name="Unsafe Auto-Params/sec" RangeGroup="SQL AutoParam Rate" /> | ||
904 | </Counters> | ||
905 | </CounterCategory> | ||
906 | </CounterCategories> | ||
907 | <DefaultCountersForAutomaticGraphs> | ||
908 | <DefaultCounter CategoryName="Processor" CounterName="% Processor Time" InstanceName="_Total" GraphName="" /> | ||
909 | <DefaultCounter CategoryName="Memory" CounterName="Available MBytes" InstanceName="" GraphName="" /> | ||
910 | <DefaultCounter CategoryName="SQLServer:Databases" CounterName="Transactions/sec" InstanceName="_Total" GraphName="" /> | ||
911 | </DefaultCountersForAutomaticGraphs> | ||
912 | </CounterSet> | ||
913 | <CounterSet Name="MinSQLServer2012" CounterSetType="Fixed" LocId=""> | ||
914 | <CounterCategories> | ||
915 | <CounterCategory Name="SQLServer:Access Methods"> | ||
916 | <Counters> | ||
917 | <Counter Name="Index Searches/sec" /> | ||
918 | <Counter Name="Full Scans/sec" /> | ||
919 | </Counters> | ||
920 | </CounterCategory> | ||
921 | </CounterCategories> | ||
922 | <DefaultCountersForAutomaticGraphs> | ||
923 | <DefaultCounter CategoryName="Processor" CounterName="% Processor Time" InstanceName="_Total" GraphName="" /> | ||
924 | <DefaultCounter CategoryName="Memory" CounterName="Available MBytes" InstanceName="" GraphName="" /> | ||
925 | </DefaultCountersForAutomaticGraphs> | ||
926 | </CounterSet> | ||
927 | </CounterSets> | ||
928 | <RunConfigurations> | ||
929 | <RunConfiguration Name="Run Settings1" Description="" ResultsStoreType="Database" TimingDetailsStorage="AllIndividualDetails" SaveTestLogsOnError="true" SaveTestLogsFrequency="1" MaxErrorDetails="200" MaxErrorsPerType="1000" MaxThresholdViolations="1000" MaxRequestUrlsReported="1000" UseTestIterations="false" RunDuration="300" WarmupTime="0" CoolDownTime="0" TestIterations="1" WebTestConnectionModel="ConnectionPerUser" WebTestConnectionPoolSize="50" SampleRate="5" ValidationLevel="High" SqlTracingConnectString="" SqlTracingConnectStringDisplayValue="" SqlTracingDirectory="" SqlTracingEnabled="false" SqlTracingFileCount="2" SqlTracingRolloverEnabled="true" SqlTracingMinimumDuration="500" RunUnitTestsInAppDomain="true" CoreCount="0"> | ||
930 | <CounterSetMappings> | ||
931 | <CounterSetMapping ComputerName="VMWINSRV8"> | ||
932 | <CounterSetReferences> | ||
933 | <CounterSetReference CounterSetName=".NET Application" /> | ||
934 | </CounterSetReferences> | ||
935 | </CounterSetMapping> | ||
936 | <CounterSetMapping ComputerName="[CONTROLLER MACHINE]"> | ||
937 | <CounterSetReferences> | ||
938 | <CounterSetReference CounterSetName="LoadTest" /> | ||
939 | <CounterSetReference CounterSetName="Controller" /> | ||
940 | </CounterSetReferences> | ||
941 | </CounterSetMapping> | ||
942 | <CounterSetMapping ComputerName="[AGENT MACHINES]"> | ||
943 | <CounterSetReferences> | ||
944 | <CounterSetReference CounterSetName="Agent" /> | ||
945 | </CounterSetReferences> | ||
946 | </CounterSetMapping> | ||
947 | </CounterSetMappings> | ||
948 | <ContextParameters> | ||
949 | <ContextParameter Name="TT" Value="0" /> | ||
950 | </ContextParameters> | ||
951 | </RunConfiguration> | ||
952 | </RunConfigurations> | ||
953 | <LoadTestPlugins> | ||
954 | <LoadTestPlugin Classname="PluginLib.LoadtestContextCopy, LoadTestLib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" DisplayName="LoadtestContextCopy" Description="" /> | ||
955 | </LoadTestPlugins> | ||
956 | </LoadTest> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | using System; | ||
2 | using System.Text; | ||
3 | using System.Collections.Generic; | ||
4 | using System.Linq; | ||
5 | using Microsoft.VisualStudio.TestTools.UnitTesting; | ||
6 | |||
7 | namespace PerformanceTestProject | ||
8 | { | ||
9 | /// <summary> | ||
10 | /// Summary description for EmailValidatorPerfTest | ||
11 | /// </summary> | ||
12 | [TestClass] | ||
13 | public class EmailValidatorPerfTest | ||
14 | { | ||
15 | public EmailValidatorPerfTest() | ||
16 | { | ||
17 | // | ||
18 | // TODO: Add constructor logic here | ||
19 | // | ||
20 | } | ||
21 | |||
22 | private TestContext testContextInstance; | ||
23 | |||
24 | /// <summary> | ||
25 | ///Gets or sets the test context which provides | ||
26 | ///information about and functionality for the current test run. | ||
27 | ///</summary> | ||
28 | public TestContext TestContext | ||
29 | { | ||
30 | get | ||
31 | { | ||
32 | return testContextInstance; | ||
33 | } | ||
34 | set | ||
35 | { | ||
36 | testContextInstance = value; | ||
37 | } | ||
38 | } | ||
39 | |||
40 | #region Additional test attributes | ||
41 | // | ||
42 | // You can use the following additional attributes as you write your tests: | ||
43 | // | ||
44 | // Use ClassInitialize to run code before running the first test in the class | ||
45 | // [ClassInitialize()] | ||
46 | // public static void MyClassInitialize(TestContext testContext) { } | ||
47 | // | ||
48 | // Use ClassCleanup to run code after all tests in a class have run | ||
49 | // [ClassCleanup()] | ||
50 | // public static void MyClassCleanup() { } | ||
51 | // | ||
52 | // Use TestInitialize to run code before running each test | ||
53 | // [TestInitialize()] | ||
54 | // public void MyTestInitialize() { } | ||
55 | // | ||
56 | // Use TestCleanup to run code after each test has run | ||
57 | // [TestCleanup()] | ||
58 | // public void MyTestCleanup() { } | ||
59 | // | ||
60 | #endregion | ||
61 | |||
62 | [TestMethod] | ||
63 | public void AF01_Validate() | ||
64 | { | ||
65 | // Skapa en instans av klienten till tjänsten (gör inget anrop) | ||
66 | TestContext.WriteLine("Skapar klienten.."); | ||
67 | EmailValidatorServiceReference.EmailValidatorClient myClient = new EmailValidatorServiceReference.EmailValidatorClient(); | ||
68 | myClient.Endpoint.Address = new System.ServiceModel.EndpointAddress("http://localhost:8080/EmailValidator"); | ||
69 | |||
70 | // Simulera lite betänketid | ||
71 | System.Threading.Thread.Sleep(0); | ||
72 | |||
73 | // Logga vad vi gör... | ||
74 | TestContext.WriteLine("Anropar Validate med indata: " + "christian@gerdes.se"); | ||
75 | // Skapa timer | ||
76 | TestContext.BeginTimer("01_ValidateCall"); | ||
77 | // Utför anrop mot tjänsten | ||
78 | bool response = myClient.ValidateAddress("christian@gerdes.se"); | ||
79 | // Stoppa Timer | ||
80 | TestContext.EndTimer("01_ValidateCall"); | ||
81 | |||
82 | // Verifiera svaret | ||
83 | TestContext.WriteLine("Svaret som mottogs är: " + response.ToString()); | ||
84 | Assert.IsTrue(response, "Verifiering av epostadress misslyckades"); | ||
85 | |||
86 | // Stäng instansen | ||
87 | TestContext.WriteLine("Stänger klienten.."); | ||
88 | myClient.Close(); | ||
89 | } | ||
90 | |||
91 | [TestMethod] | ||
92 | public void AF02_CheckIfFull() | ||
93 | { | ||
94 | if (TestContext.Properties["TT"] == null) | ||
95 | TestContext.Properties.Add("TT", "500"); | ||
96 | |||
97 | // Skapa en instans av klienten till tjänsten (gör inget anrop) | ||
98 | TestContext.WriteLine("Skapar klienten.."); | ||
99 | EmailValidatorServiceReference.EmailValidatorClient myClient = new EmailValidatorServiceReference.EmailValidatorClient(); | ||
100 | myClient.Endpoint.Address = new System.ServiceModel.EndpointAddress("http://localhost:8080/EmailValidator"); | ||
101 | |||
102 | // Läs TT från context | ||
103 | int myTT = int.Parse(TestContext.Properties["TT"].ToString()); | ||
104 | TestContext.WriteLine("Använder TT: " + myTT + " ms"); | ||
105 | |||
106 | // Simulera lite betänketid | ||
107 | System.Threading.Thread.Sleep(myTT); | ||
108 | |||
109 | // Logga vad vi gör... | ||
110 | TestContext.WriteLine("Anropar CheckIfFull"); | ||
111 | // Skapa timer | ||
112 | TestContext.BeginTimer("01_CheckIfFull"); | ||
113 | // Utför anrop mot tjänsten | ||
114 | bool response = myClient.checkIfFull(); | ||
115 | // Stoppa Timer | ||
116 | TestContext.EndTimer("01_CheckIfFull"); | ||
117 | |||
118 | // Verifiera svaret | ||
119 | TestContext.WriteLine("Svaret som mottogs är: " + response.ToString()); | ||
120 | Assert.IsTrue(response, "CheckIfFull anropet misslyckades, svaret ej True"); | ||
121 | |||
122 | // Stäng instansen | ||
123 | TestContext.WriteLine("Stänger klienten.."); | ||
124 | myClient.Close(); | ||
125 | } | ||
126 | |||
127 | [TestMethod] | ||
128 | public void AF03_Register() | ||
129 | { | ||
130 | if (TestContext.Properties["TT"] == null) | ||
131 | TestContext.Properties.Add("TT", "500"); | ||
132 | |||
133 | // Skapa en instans av klienten till tjänsten (gör inget anrop) | ||
134 | TestContext.WriteLine("Skapar klienten.."); | ||
135 | EmailValidatorServiceReference.EmailValidatorClient myClient = new EmailValidatorServiceReference.EmailValidatorClient(); | ||
136 | myClient.Endpoint.Address = new System.ServiceModel.EndpointAddress("http://localhost:8080/EmailValidator"); | ||
137 | |||
138 | // Läs TT från context | ||
139 | int myTT = int.Parse(TestContext.Properties["TT"].ToString()); | ||
140 | TestContext.WriteLine("Använder TT: " + myTT + " ms"); | ||
141 | |||
142 | // Simulera lite betänketid | ||
143 | System.Threading.Thread.Sleep(myTT); | ||
144 | |||
145 | // Logga vad vi gör... | ||
146 | TestContext.WriteLine("Anropar CheckIfFull"); | ||
147 | // Skapa timer | ||
148 | TestContext.BeginTimer("03_Register"); | ||
149 | // Utför anrop mot tjänsten | ||
150 | int response = myClient.RegisterAdress("christian.gerdes@lightsinline.se"); | ||
151 | // Stoppa Timer | ||
152 | TestContext.EndTimer("03_Register"); | ||
153 | |||
154 | // Verifiera svaret | ||
155 | TestContext.WriteLine("Svaret som mottogs är: " + response.ToString()); | ||
156 | if(response != 0) | ||
157 | Assert.Fail("CheckIfFull anropet misslyckades, svaret ej True"); | ||
158 | |||
159 | // Stäng instansen | ||
160 | TestContext.WriteLine("Stänger klienten.."); | ||
161 | myClient.Close(); | ||
162 | } | ||
163 | } | ||
164 | } |
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
3 | <PropertyGroup> | ||
4 | <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> | ||
5 | <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> | ||
6 | <ProductVersion> | ||
7 | </ProductVersion> | ||
8 | <SchemaVersion>2.0</SchemaVersion> | ||
9 | <ProjectGuid>{BF25A2FB-91ED-4BE2-8772-FC5E2380B86D}</ProjectGuid> | ||
10 | <OutputType>Library</OutputType> | ||
11 | <AppDesignerFolder>Properties</AppDesignerFolder> | ||
12 | <RootNamespace>PerformanceTestProject</RootNamespace> | ||
13 | <AssemblyName>PerformanceTestProject</AssemblyName> | ||
14 | <TargetFrameworkVersion>v4.0</TargetFrameworkVersion> | ||
15 | <FileAlignment>512</FileAlignment> | ||
16 | <ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids> | ||
17 | <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion> | ||
18 | <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath> | ||
19 | <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\$(VisualStudioVersion)\UITestExtensionPackages</ReferencePath> | ||
20 | <IsCodedUITest>False</IsCodedUITest> | ||
21 | <TestProjectType>WebTest</TestProjectType> | ||
22 | <FileUpgradeFlags> | ||
23 | </FileUpgradeFlags> | ||
24 | <UpgradeBackupLocation> | ||
25 | </UpgradeBackupLocation> | ||
26 | <OldToolsVersion>4.0</OldToolsVersion> | ||
27 | <PublishUrl>publish\</PublishUrl> | ||
28 | <Install>true</Install> | ||
29 | <InstallFrom>Disk</InstallFrom> | ||
30 | <UpdateEnabled>false</UpdateEnabled> | ||
31 | <UpdateMode>Foreground</UpdateMode> | ||
32 | <UpdateInterval>7</UpdateInterval> | ||
33 | <UpdateIntervalUnits>Days</UpdateIntervalUnits> | ||
34 | <UpdatePeriodically>false</UpdatePeriodically> | ||
35 | <UpdateRequired>false</UpdateRequired> | ||
36 | <MapFileExtensions>true</MapFileExtensions> | ||
37 | <ApplicationRevision>0</ApplicationRevision> | ||
38 | <ApplicationVersion>1.0.0.%2a</ApplicationVersion> | ||
39 | <IsWebBootstrapper>false</IsWebBootstrapper> | ||
40 | <UseApplicationTrust>false</UseApplicationTrust> | ||
41 | <BootstrapperEnabled>true</BootstrapperEnabled> | ||
42 | </PropertyGroup> | ||
43 | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> | ||
44 | <DebugSymbols>true</DebugSymbols> | ||
45 | <DebugType>full</DebugType> | ||
46 | <Optimize>false</Optimize> | ||
47 | <OutputPath>bin\Debug\</OutputPath> | ||
48 | <DefineConstants>DEBUG;TRACE</DefineConstants> | ||
49 | <ErrorReport>prompt</ErrorReport> | ||
50 | <WarningLevel>4</WarningLevel> | ||
51 | </PropertyGroup> | ||
52 | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> | ||
53 | <DebugType>pdbonly</DebugType> | ||
54 | <Optimize>true</Optimize> | ||
55 | <OutputPath>bin\Release\</OutputPath> | ||
56 | <DefineConstants>TRACE</DefineConstants> | ||
57 | <ErrorReport>prompt</ErrorReport> | ||
58 | <WarningLevel>4</WarningLevel> | ||
59 | </PropertyGroup> | ||
60 | <ItemGroup> | ||
61 | <Reference Include="Microsoft.VisualStudio.QualityTools.LoadTestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> | ||
62 | <Reference Include="Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" /> | ||
63 | <Reference Include="Microsoft.VisualStudio.QualityTools.WebTestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> | ||
64 | <Reference Include="System" /> | ||
65 | <Reference Include="System.Core"> | ||
66 | <RequiredTargetFramework>3.5</RequiredTargetFramework> | ||
67 | </Reference> | ||
68 | <Reference Include="System.Runtime.Serialization" /> | ||
69 | <Reference Include="System.ServiceModel" /> | ||
70 | <Reference Include="System.Xml" /> | ||
71 | </ItemGroup> | ||
72 | <ItemGroup> | ||
73 | <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies"> | ||
74 | <Visible>False</Visible> | ||
75 | </CodeAnalysisDependentAssemblyPaths> | ||
76 | </ItemGroup> | ||
77 | <ItemGroup> | ||
78 | <Compile Include="EmailValidatorPerfTest.cs" /> | ||
79 | <Compile Include="Properties\AssemblyInfo.cs" /> | ||
80 | <Compile Include="Service References\EmailValidatorServiceReference\Reference.cs"> | ||
81 | <AutoGen>True</AutoGen> | ||
82 | <DesignTime>True</DesignTime> | ||
83 | <DependentUpon>Reference.svcmap</DependentUpon> | ||
84 | </Compile> | ||
85 | </ItemGroup> | ||
86 | <ItemGroup> | ||
87 | <WCFMetadata Include="Service References\" /> | ||
88 | </ItemGroup> | ||
89 | <ItemGroup> | ||
90 | <None Include="AF02_CheckIfFull2.webtest"> | ||
91 | <CopyToOutputDirectory>Always</CopyToOutputDirectory> | ||
92 | </None> | ||
93 | <None Include="AF02_CheckIfFull.webtest"> | ||
94 | <CopyToOutputDirectory>Always</CopyToOutputDirectory> | ||
95 | </None> | ||
96 | <None Include="AF01_Validate.webtest"> | ||
97 | <CopyToOutputDirectory>Always</CopyToOutputDirectory> | ||
98 | </None> | ||
99 | <None Include="app.config" /> | ||
100 | <None Include="EmailValidator.loadtest"> | ||
101 | <CopyToOutputDirectory>Always</CopyToOutputDirectory> | ||
102 | </None> | ||
103 | </ItemGroup> | ||
104 | <ItemGroup> | ||
105 | <WCFMetadataStorage Include="Service References\EmailValidatorServiceReference\" /> | ||
106 | </ItemGroup> | ||
107 | <ItemGroup> | ||
108 | <None Include="Service References\EmailValidatorServiceReference\configuration91.svcinfo" /> | ||
109 | </ItemGroup> | ||
110 | <ItemGroup> | ||
111 | <None Include="Service References\EmailValidatorServiceReference\configuration.svcinfo" /> | ||
112 | </ItemGroup> | ||
113 | <ItemGroup> | ||
114 | <None Include="Service References\EmailValidatorServiceReference\EmailValidator1.wsdl" /> | ||
115 | <None Include="Service References\EmailValidatorServiceReference\EmailValidator2.xsd"> | ||
116 | <SubType>Designer</SubType> | ||
117 | </None> | ||
118 | <None Include="Service References\EmailValidatorServiceReference\EmailValidator21.xsd"> | ||
119 | <SubType>Designer</SubType> | ||
120 | </None> | ||
121 | <None Include="Service References\EmailValidatorServiceReference\Reference.svcmap"> | ||
122 | <Generator>WCF Proxy Generator</Generator> | ||
123 | <LastGenOutput>Reference.cs</LastGenOutput> | ||
124 | </None> | ||
125 | </ItemGroup> | ||
126 | <ItemGroup> | ||
127 | <ProjectReference Include="..\LoadTestLib\LoadTestLib\PluginLib.csproj"> | ||
128 | <Project>{226AB0FE-47CF-4C69-8330-C86327AA4246}</Project> | ||
129 | <Name>PluginLib</Name> | ||
130 | </ProjectReference> | ||
131 | </ItemGroup> | ||
132 | <ItemGroup> | ||
133 | <None Include="Service References\EmailValidatorServiceReference\EmailValidator1.disco" /> | ||
134 | </ItemGroup> | ||
135 | <ItemGroup> | ||
136 | <BootstrapperPackage Include=".NETFramework,Version=v4.0"> | ||
137 | <Visible>False</Visible> | ||
138 | <ProductName>Microsoft .NET Framework 4 %28x86 and x64%29</ProductName> | ||
139 | <Install>true</Install> | ||
140 | </BootstrapperPackage> | ||
141 | <BootstrapperPackage Include="Microsoft.Net.Client.3.5"> | ||
142 | <Visible>False</Visible> | ||
143 | <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName> | ||
144 | <Install>false</Install> | ||
145 | </BootstrapperPackage> | ||
146 | <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1"> | ||
147 | <Visible>False</Visible> | ||
148 | <ProductName>.NET Framework 3.5 SP1</ProductName> | ||
149 | <Install>false</Install> | ||
150 | </BootstrapperPackage> | ||
151 | <BootstrapperPackage Include="Microsoft.Windows.Installer.4.5"> | ||
152 | <Visible>False</Visible> | ||
153 | <ProductName>Windows Installer 4.5</ProductName> | ||
154 | <Install>true</Install> | ||
155 | </BootstrapperPackage> | ||
156 | </ItemGroup> | ||
157 | <Choose> | ||
158 | <When Condition="'$(VisualStudioVersion)' == '10.0' And '$(IsCodedUITest)' == 'True'"> | ||
159 | <ItemGroup> | ||
160 | <Reference Include="Microsoft.VisualStudio.QualityTools.CodedUITestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"> | ||
161 | <Private>False</Private> | ||
162 | </Reference> | ||
163 | <Reference Include="Microsoft.VisualStudio.TestTools.UITest.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"> | ||
164 | <Private>False</Private> | ||
165 | </Reference> | ||
166 | <Reference Include="Microsoft.VisualStudio.TestTools.UITest.Extension, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"> | ||
167 | <Private>False</Private> | ||
168 | </Reference> | ||
169 | <Reference Include="Microsoft.VisualStudio.TestTools.UITesting, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"> | ||
170 | <Private>False</Private> | ||
171 | </Reference> | ||
172 | </ItemGroup> | ||
173 | </When> | ||
174 | </Choose> | ||
175 | <Import Project="$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets" Condition="Exists('$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets')" /> | ||
176 | <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> | ||
177 | <!-- To modify your build process, add your task inside one of the targets below and uncomment it. | ||
178 | Other similar extension points exist, see Microsoft.Common.targets. | ||
179 | <Target Name="BeforeBuild"> | ||
180 | </Target> | ||
181 | <Target Name="AfterBuild"> | ||
182 | </Target> | ||
183 | --> | ||
184 | </Project> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | using System.Reflection; | ||
2 | using System.Runtime.CompilerServices; | ||
3 | using System.Runtime.InteropServices; | ||
4 | |||
5 | // General Information about an assembly is controlled through the following | ||
6 | // set of attributes. Change these attribute values to modify the information | ||
7 | // associated with an assembly. | ||
8 | [assembly: AssemblyTitle("PerformanceTestProject")] | ||
9 | [assembly: AssemblyDescription("")] | ||
10 | [assembly: AssemblyConfiguration("")] | ||
11 | [assembly: AssemblyCompany("Microsoft")] | ||
12 | [assembly: AssemblyProduct("PerformanceTestProject")] | ||
13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2011")] | ||
14 | [assembly: AssemblyTrademark("")] | ||
15 | [assembly: AssemblyCulture("")] | ||
16 | |||
17 | // Setting ComVisible to false makes the types in this assembly not visible | ||
18 | // to COM components. If you need to access a type in this assembly from | ||
19 | // COM, set the ComVisible attribute to true on that type. | ||
20 | [assembly: ComVisible(false)] | ||
21 | |||
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM | ||
23 | [assembly: Guid("1ece9ef0-115b-449d-84c7-84d6b806ce72")] | ||
24 | |||
25 | // Version information for an assembly consists of the following four values: | ||
26 | // | ||
27 | // Major Version | ||
28 | // Minor Version | ||
29 | // Build Number | ||
30 | // Revision | ||
31 | // | ||
32 | // You can specify all the values or you can default the Build and Revision Numbers | ||
33 | // by using the '*' as shown below: | ||
34 | [assembly: AssemblyVersion("1.0.0.0")] | ||
35 | [assembly: AssemblyFileVersion("1.0.0.0")] |
PerformanceTestProject/Service References/EmailValidatorServiceReference/EmailValidator1.disco
0 → 100644
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <discovery xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/disco/"> | ||
3 | <contractRef ref="http://vmwinsrv8:8080/EmailValidator?wsdl" docRef="http://vmwinsrv8:8080/EmailValidator" xmlns="http://schemas.xmlsoap.org/disco/scl/" /> | ||
4 | </discovery> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
PerformanceTestProject/Service References/EmailValidatorServiceReference/EmailValidator1.wsdl
0 → 100644
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <wsdl:definitions xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:tns="http://tempuri.org/" xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="EmailValidator" targetNamespace="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"> | ||
3 | <wsdl:types> | ||
4 | <xsd:schema targetNamespace="http://tempuri.org/Imports"> | ||
5 | <xsd:import schemaLocation="http://vmwinsrv8:8080/EmailValidator?xsd=xsd0" namespace="http://tempuri.org/" /> | ||
6 | <xsd:import schemaLocation="http://vmwinsrv8:8080/EmailValidator?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/" /> | ||
7 | </xsd:schema> | ||
8 | </wsdl:types> | ||
9 | <wsdl:message name="IEmailValidator_ValidateAddress_InputMessage"> | ||
10 | <wsdl:part name="parameters" element="tns:ValidateAddress" /> | ||
11 | </wsdl:message> | ||
12 | <wsdl:message name="IEmailValidator_ValidateAddress_OutputMessage"> | ||
13 | <wsdl:part name="parameters" element="tns:ValidateAddressResponse" /> | ||
14 | </wsdl:message> | ||
15 | <wsdl:message name="IEmailValidator_RegisterAdress_InputMessage"> | ||
16 | <wsdl:part name="parameters" element="tns:RegisterAdress" /> | ||
17 | </wsdl:message> | ||
18 | <wsdl:message name="IEmailValidator_RegisterAdress_OutputMessage"> | ||
19 | <wsdl:part name="parameters" element="tns:RegisterAdressResponse" /> | ||
20 | </wsdl:message> | ||
21 | <wsdl:message name="IEmailValidator_GetAdress_InputMessage"> | ||
22 | <wsdl:part name="parameters" element="tns:GetAdress" /> | ||
23 | </wsdl:message> | ||
24 | <wsdl:message name="IEmailValidator_GetAdress_OutputMessage"> | ||
25 | <wsdl:part name="parameters" element="tns:GetAdressResponse" /> | ||
26 | </wsdl:message> | ||
27 | <wsdl:message name="IEmailValidator_checkIfFull_InputMessage"> | ||
28 | <wsdl:part name="parameters" element="tns:checkIfFull" /> | ||
29 | </wsdl:message> | ||
30 | <wsdl:message name="IEmailValidator_checkIfFull_OutputMessage"> | ||
31 | <wsdl:part name="parameters" element="tns:checkIfFullResponse" /> | ||
32 | </wsdl:message> | ||
33 | <wsdl:message name="IEmailValidator_checkIfFull2_InputMessage"> | ||
34 | <wsdl:part name="parameters" element="tns:checkIfFull2" /> | ||
35 | </wsdl:message> | ||
36 | <wsdl:message name="IEmailValidator_checkIfFull2_OutputMessage"> | ||
37 | <wsdl:part name="parameters" element="tns:checkIfFull2Response" /> | ||
38 | </wsdl:message> | ||
39 | <wsdl:portType name="IEmailValidator"> | ||
40 | <wsdl:operation name="ValidateAddress"> | ||
41 | <wsdl:input wsaw:Action="http://tempuri.org/IEmailValidator/ValidateAddress" message="tns:IEmailValidator_ValidateAddress_InputMessage" /> | ||
42 | <wsdl:output wsaw:Action="http://tempuri.org/IEmailValidator/ValidateAddressResponse" message="tns:IEmailValidator_ValidateAddress_OutputMessage" /> | ||
43 | </wsdl:operation> | ||
44 | <wsdl:operation name="RegisterAdress"> | ||
45 | <wsdl:input wsaw:Action="http://tempuri.org/IEmailValidator/RegisterAdress" message="tns:IEmailValidator_RegisterAdress_InputMessage" /> | ||
46 | <wsdl:output wsaw:Action="http://tempuri.org/IEmailValidator/RegisterAdressResponse" message="tns:IEmailValidator_RegisterAdress_OutputMessage" /> | ||
47 | </wsdl:operation> | ||
48 | <wsdl:operation name="GetAdress"> | ||
49 | <wsdl:input wsaw:Action="http://tempuri.org/IEmailValidator/GetAdress" message="tns:IEmailValidator_GetAdress_InputMessage" /> | ||
50 | <wsdl:output wsaw:Action="http://tempuri.org/IEmailValidator/GetAdressResponse" message="tns:IEmailValidator_GetAdress_OutputMessage" /> | ||
51 | </wsdl:operation> | ||
52 | <wsdl:operation name="checkIfFull"> | ||
53 | <wsdl:input wsaw:Action="http://tempuri.org/IEmailValidator/checkIfFull" message="tns:IEmailValidator_checkIfFull_InputMessage" /> | ||
54 | <wsdl:output wsaw:Action="http://tempuri.org/IEmailValidator/checkIfFullResponse" message="tns:IEmailValidator_checkIfFull_OutputMessage" /> | ||
55 | </wsdl:operation> | ||
56 | <wsdl:operation name="checkIfFull2"> | ||
57 | <wsdl:input wsaw:Action="http://tempuri.org/IEmailValidator/checkIfFull2" message="tns:IEmailValidator_checkIfFull2_InputMessage" /> | ||
58 | <wsdl:output wsaw:Action="http://tempuri.org/IEmailValidator/checkIfFull2Response" message="tns:IEmailValidator_checkIfFull2_OutputMessage" /> | ||
59 | </wsdl:operation> | ||
60 | </wsdl:portType> | ||
61 | <wsdl:binding name="BasicHttpBinding_IEmailValidator" type="tns:IEmailValidator"> | ||
62 | <soap:binding transport="http://schemas.xmlsoap.org/soap/http" /> | ||
63 | <wsdl:operation name="ValidateAddress"> | ||
64 | <soap:operation soapAction="http://tempuri.org/IEmailValidator/ValidateAddress" style="document" /> | ||
65 | <wsdl:input> | ||
66 | <soap:body use="literal" /> | ||
67 | </wsdl:input> | ||
68 | <wsdl:output> | ||
69 | <soap:body use="literal" /> | ||
70 | </wsdl:output> | ||
71 | </wsdl:operation> | ||
72 | <wsdl:operation name="RegisterAdress"> | ||
73 | <soap:operation soapAction="http://tempuri.org/IEmailValidator/RegisterAdress" style="document" /> | ||
74 | <wsdl:input> | ||
75 | <soap:body use="literal" /> | ||
76 | </wsdl:input> | ||
77 | <wsdl:output> | ||
78 | <soap:body use="literal" /> | ||
79 | </wsdl:output> | ||
80 | </wsdl:operation> | ||
81 | <wsdl:operation name="GetAdress"> | ||
82 | <soap:operation soapAction="http://tempuri.org/IEmailValidator/GetAdress" style="document" /> | ||
83 | <wsdl:input> | ||
84 | <soap:body use="literal" /> | ||
85 | </wsdl:input> | ||
86 | <wsdl:output> | ||
87 | <soap:body use="literal" /> | ||
88 | </wsdl:output> | ||
89 | </wsdl:operation> | ||
90 | <wsdl:operation name="checkIfFull"> | ||
91 | <soap:operation soapAction="http://tempuri.org/IEmailValidator/checkIfFull" style="document" /> | ||
92 | <wsdl:input> | ||
93 | <soap:body use="literal" /> | ||
94 | </wsdl:input> | ||
95 | <wsdl:output> | ||
96 | <soap:body use="literal" /> | ||
97 | </wsdl:output> | ||
98 | </wsdl:operation> | ||
99 | <wsdl:operation name="checkIfFull2"> | ||
100 | <soap:operation soapAction="http://tempuri.org/IEmailValidator/checkIfFull2" style="document" /> | ||
101 | <wsdl:input> | ||
102 | <soap:body use="literal" /> | ||
103 | </wsdl:input> | ||
104 | <wsdl:output> | ||
105 | <soap:body use="literal" /> | ||
106 | </wsdl:output> | ||
107 | </wsdl:operation> | ||
108 | </wsdl:binding> | ||
109 | <wsdl:service name="EmailValidator"> | ||
110 | <wsdl:port name="BasicHttpBinding_IEmailValidator" binding="tns:BasicHttpBinding_IEmailValidator"> | ||
111 | <soap:address location="http://vmwinsrv8:8080/EmailValidator" /> | ||
112 | </wsdl:port> | ||
113 | </wsdl:service> | ||
114 | </wsdl:definitions> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
PerformanceTestProject/Service References/EmailValidatorServiceReference/EmailValidator2.xsd
0 → 100644
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <xs:schema xmlns:tns="http://tempuri.org/" elementFormDefault="qualified" targetNamespace="http://tempuri.org/" xmlns:xs="http://www.w3.org/2001/XMLSchema"> | ||
3 | <xs:element name="ValidateAddress"> | ||
4 | <xs:complexType> | ||
5 | <xs:sequence> | ||
6 | <xs:element minOccurs="0" name="emailAddress" nillable="true" type="xs:string" /> | ||
7 | </xs:sequence> | ||
8 | </xs:complexType> | ||
9 | </xs:element> | ||
10 | <xs:element name="ValidateAddressResponse"> | ||
11 | <xs:complexType> | ||
12 | <xs:sequence> | ||
13 | <xs:element minOccurs="0" name="ValidateAddressResult" type="xs:boolean" /> | ||
14 | </xs:sequence> | ||
15 | </xs:complexType> | ||
16 | </xs:element> | ||
17 | <xs:element name="RegisterAdress"> | ||
18 | <xs:complexType> | ||
19 | <xs:sequence> | ||
20 | <xs:element minOccurs="0" name="emailAddress" nillable="true" type="xs:string" /> | ||
21 | </xs:sequence> | ||
22 | </xs:complexType> | ||
23 | </xs:element> | ||
24 | <xs:element name="RegisterAdressResponse"> | ||
25 | <xs:complexType> | ||
26 | <xs:sequence> | ||
27 | <xs:element minOccurs="0" name="RegisterAdressResult" type="xs:int" /> | ||
28 | </xs:sequence> | ||
29 | </xs:complexType> | ||
30 | </xs:element> | ||
31 | <xs:element name="GetAdress"> | ||
32 | <xs:complexType> | ||
33 | <xs:sequence> | ||
34 | <xs:element minOccurs="0" name="userID" type="xs:int" /> | ||
35 | </xs:sequence> | ||
36 | </xs:complexType> | ||
37 | </xs:element> | ||
38 | <xs:element name="GetAdressResponse"> | ||
39 | <xs:complexType> | ||
40 | <xs:sequence> | ||
41 | <xs:element minOccurs="0" name="GetAdressResult" nillable="true" type="xs:string" /> | ||
42 | </xs:sequence> | ||
43 | </xs:complexType> | ||
44 | </xs:element> | ||
45 | <xs:element name="checkIfFull"> | ||
46 | <xs:complexType> | ||
47 | <xs:sequence /> | ||
48 | </xs:complexType> | ||
49 | </xs:element> | ||
50 | <xs:element name="checkIfFullResponse"> | ||
51 | <xs:complexType> | ||
52 | <xs:sequence> | ||
53 | <xs:element minOccurs="0" name="checkIfFullResult" type="xs:boolean" /> | ||
54 | </xs:sequence> | ||
55 | </xs:complexType> | ||
56 | </xs:element> | ||
57 | <xs:element name="checkIfFull2"> | ||
58 | <xs:complexType> | ||
59 | <xs:sequence /> | ||
60 | </xs:complexType> | ||
61 | </xs:element> | ||
62 | <xs:element name="checkIfFull2Response"> | ||
63 | <xs:complexType> | ||
64 | <xs:sequence> | ||
65 | <xs:element minOccurs="0" name="checkIfFull2Result" type="xs:boolean" /> | ||
66 | </xs:sequence> | ||
67 | </xs:complexType> | ||
68 | </xs:element> | ||
69 | </xs:schema> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
PerformanceTestProject/Service References/EmailValidatorServiceReference/EmailValidator21.xsd
0 → 100644
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <xs:schema xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema"> | ||
3 | <xs:element name="anyType" nillable="true" type="xs:anyType" /> | ||
4 | <xs:element name="anyURI" nillable="true" type="xs:anyURI" /> | ||
5 | <xs:element name="base64Binary" nillable="true" type="xs:base64Binary" /> | ||
6 | <xs:element name="boolean" nillable="true" type="xs:boolean" /> | ||
7 | <xs:element name="byte" nillable="true" type="xs:byte" /> | ||
8 | <xs:element name="dateTime" nillable="true" type="xs:dateTime" /> | ||
9 | <xs:element name="decimal" nillable="true" type="xs:decimal" /> | ||
10 | <xs:element name="double" nillable="true" type="xs:double" /> | ||
11 | <xs:element name="float" nillable="true" type="xs:float" /> | ||
12 | <xs:element name="int" nillable="true" type="xs:int" /> | ||
13 | <xs:element name="long" nillable="true" type="xs:long" /> | ||
14 | <xs:element name="QName" nillable="true" type="xs:QName" /> | ||
15 | <xs:element name="short" nillable="true" type="xs:short" /> | ||
16 | <xs:element name="string" nillable="true" type="xs:string" /> | ||
17 | <xs:element name="unsignedByte" nillable="true" type="xs:unsignedByte" /> | ||
18 | <xs:element name="unsignedInt" nillable="true" type="xs:unsignedInt" /> | ||
19 | <xs:element name="unsignedLong" nillable="true" type="xs:unsignedLong" /> | ||
20 | <xs:element name="unsignedShort" nillable="true" type="xs:unsignedShort" /> | ||
21 | <xs:element name="char" nillable="true" type="tns:char" /> | ||
22 | <xs:simpleType name="char"> | ||
23 | <xs:restriction base="xs:int" /> | ||
24 | </xs:simpleType> | ||
25 | <xs:element name="duration" nillable="true" type="tns:duration" /> | ||
26 | <xs:simpleType name="duration"> | ||
27 | <xs:restriction base="xs:duration"> | ||
28 | <xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" /> | ||
29 | <xs:minInclusive value="-P10675199DT2H48M5.4775808S" /> | ||
30 | <xs:maxInclusive value="P10675199DT2H48M5.4775807S" /> | ||
31 | </xs:restriction> | ||
32 | </xs:simpleType> | ||
33 | <xs:element name="guid" nillable="true" type="tns:guid" /> | ||
34 | <xs:simpleType name="guid"> | ||
35 | <xs:restriction base="xs:string"> | ||
36 | <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" /> | ||
37 | </xs:restriction> | ||
38 | </xs:simpleType> | ||
39 | <xs:attribute name="FactoryType" type="xs:QName" /> | ||
40 | <xs:attribute name="Id" type="xs:ID" /> | ||
41 | <xs:attribute name="Ref" type="xs:IDREF" /> | ||
42 | </xs:schema> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | //------------------------------------------------------------------------------ | ||
2 | // <auto-generated> | ||
3 | // This code was generated by a tool. | ||
4 | // Runtime Version:4.0.30319.34014 | ||
5 | // | ||
6 | // Changes to this file may cause incorrect behavior and will be lost if | ||
7 | // the code is regenerated. | ||
8 | // </auto-generated> | ||
9 | //------------------------------------------------------------------------------ | ||
10 | |||
11 | namespace PerformanceTestProject.EmailValidatorServiceReference { | ||
12 | |||
13 | |||
14 | [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")] | ||
15 | [System.ServiceModel.ServiceContractAttribute(ConfigurationName="EmailValidatorServiceReference.IEmailValidator")] | ||
16 | public interface IEmailValidator { | ||
17 | |||
18 | [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IEmailValidator/ValidateAddress", ReplyAction="http://tempuri.org/IEmailValidator/ValidateAddressResponse")] | ||
19 | bool ValidateAddress(string emailAddress); | ||
20 | |||
21 | [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IEmailValidator/RegisterAdress", ReplyAction="http://tempuri.org/IEmailValidator/RegisterAdressResponse")] | ||
22 | int RegisterAdress(string emailAddress); | ||
23 | |||
24 | [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IEmailValidator/GetAdress", ReplyAction="http://tempuri.org/IEmailValidator/GetAdressResponse")] | ||
25 | string GetAdress(int userID); | ||
26 | |||
27 | [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IEmailValidator/checkIfFull", ReplyAction="http://tempuri.org/IEmailValidator/checkIfFullResponse")] | ||
28 | bool checkIfFull(); | ||
29 | |||
30 | [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IEmailValidator/checkIfFull2", ReplyAction="http://tempuri.org/IEmailValidator/checkIfFull2Response")] | ||
31 | bool checkIfFull2(); | ||
32 | } | ||
33 | |||
34 | [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")] | ||
35 | public interface IEmailValidatorChannel : PerformanceTestProject.EmailValidatorServiceReference.IEmailValidator, System.ServiceModel.IClientChannel { | ||
36 | } | ||
37 | |||
38 | [System.Diagnostics.DebuggerStepThroughAttribute()] | ||
39 | [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")] | ||
40 | public partial class EmailValidatorClient : System.ServiceModel.ClientBase<PerformanceTestProject.EmailValidatorServiceReference.IEmailValidator>, PerformanceTestProject.EmailValidatorServiceReference.IEmailValidator { | ||
41 | |||
42 | public EmailValidatorClient() { | ||
43 | } | ||
44 | |||
45 | public EmailValidatorClient(string endpointConfigurationName) : | ||
46 | base(endpointConfigurationName) { | ||
47 | } | ||
48 | |||
49 | public EmailValidatorClient(string endpointConfigurationName, string remoteAddress) : | ||
50 | base(endpointConfigurationName, remoteAddress) { | ||
51 | } | ||
52 | |||
53 | public EmailValidatorClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) : | ||
54 | base(endpointConfigurationName, remoteAddress) { | ||
55 | } | ||
56 | |||
57 | public EmailValidatorClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : | ||
58 | base(binding, remoteAddress) { | ||
59 | } | ||
60 | |||
61 | public bool ValidateAddress(string emailAddress) { | ||
62 | return base.Channel.ValidateAddress(emailAddress); | ||
63 | } | ||
64 | |||
65 | public int RegisterAdress(string emailAddress) { | ||
66 | return base.Channel.RegisterAdress(emailAddress); | ||
67 | } | ||
68 | |||
69 | public string GetAdress(int userID) { | ||
70 | return base.Channel.GetAdress(userID); | ||
71 | } | ||
72 | |||
73 | public bool checkIfFull() { | ||
74 | return base.Channel.checkIfFull(); | ||
75 | } | ||
76 | |||
77 | public bool checkIfFull2() { | ||
78 | return base.Channel.checkIfFull2(); | ||
79 | } | ||
80 | } | ||
81 | } |
PerformanceTestProject/Service References/EmailValidatorServiceReference/Reference.svcmap
0 → 100644
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <ReferenceGroup xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ID="1092dbc4-7399-493c-8c22-c14b718f76fe" xmlns="urn:schemas-microsoft-com:xml-wcfservicemap"> | ||
3 | <ClientOptions> | ||
4 | <GenerateAsynchronousMethods>false</GenerateAsynchronousMethods> | ||
5 | <EnableDataBinding>true</EnableDataBinding> | ||
6 | <ExcludedTypes /> | ||
7 | <ImportXmlTypes>false</ImportXmlTypes> | ||
8 | <GenerateInternalTypes>false</GenerateInternalTypes> | ||
9 | <GenerateMessageContracts>false</GenerateMessageContracts> | ||
10 | <NamespaceMappings /> | ||
11 | <CollectionMappings /> | ||
12 | <GenerateSerializableTypes>true</GenerateSerializableTypes> | ||
13 | <Serializer>Auto</Serializer> | ||
14 | <UseSerializerForFaults>true</UseSerializerForFaults> | ||
15 | <ReferenceAllAssemblies>true</ReferenceAllAssemblies> | ||
16 | <ReferencedAssemblies /> | ||
17 | <ReferencedDataContractTypes /> | ||
18 | <ServiceContractMappings /> | ||
19 | </ClientOptions> | ||
20 | <MetadataSources> | ||
21 | <MetadataSource Address="http://vmwinsrv8:8080/EmailValidator" Protocol="http" SourceId="1" /> | ||
22 | </MetadataSources> | ||
23 | <Metadata> | ||
24 | <MetadataFile FileName="EmailValidator2.xsd" MetadataType="Schema" ID="4b9991d3-2162-4bc7-9277-4d5297e13ebb" SourceId="1" SourceUrl="http://vmwinsrv8:8080/EmailValidator?xsd=xsd0" /> | ||
25 | <MetadataFile FileName="EmailValidator1.disco" MetadataType="Disco" ID="b2c0a6d7-ea5e-4557-b583-502714c3ccc3" SourceId="1" SourceUrl="http://vmwinsrv8:8080/EmailValidator?disco" /> | ||
26 | <MetadataFile FileName="EmailValidator21.xsd" MetadataType="Schema" ID="fd22d22e-236d-4cee-864d-44441569f21b" SourceId="1" SourceUrl="http://vmwinsrv8:8080/EmailValidator?xsd=xsd1" /> | ||
27 | <MetadataFile FileName="EmailValidator1.wsdl" MetadataType="Wsdl" ID="66f0a180-8560-4d2f-94cd-b73ebb76c6f6" SourceId="1" SourceUrl="http://vmwinsrv8:8080/EmailValidator?wsdl" /> | ||
28 | </Metadata> | ||
29 | <Extensions> | ||
30 | <ExtensionFile FileName="configuration91.svcinfo" Name="configuration91.svcinfo" /> | ||
31 | <ExtensionFile FileName="configuration.svcinfo" Name="configuration.svcinfo" /> | ||
32 | </Extensions> | ||
33 | </ReferenceGroup> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
PerformanceTestProject/Service References/EmailValidatorServiceReference/configuration.svcinfo
0 → 100644
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <configurationSnapshot xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:schemas-microsoft-com:xml-wcfconfigurationsnapshot"> | ||
3 | <behaviors /> | ||
4 | <bindings> | ||
5 | <binding digest="System.ServiceModel.Configuration.BasicHttpBindingElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089:<?xml version="1.0" encoding="utf-16"?><Data name="BasicHttpBinding_IEmailValidator" />" bindingType="basicHttpBinding" name="BasicHttpBinding_IEmailValidator" /> | ||
6 | </bindings> | ||
7 | <endpoints> | ||
8 | <endpoint normalizedDigest="<?xml version="1.0" encoding="utf-16"?><Data address="http://vmwinsrv8:8080/EmailValidator" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IEmailValidator" contract="EmailValidatorServiceReference.IEmailValidator" name="BasicHttpBinding_IEmailValidator" />" digest="<?xml version="1.0" encoding="utf-16"?><Data address="http://vmwinsrv8:8080/EmailValidator" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IEmailValidator" contract="EmailValidatorServiceReference.IEmailValidator" name="BasicHttpBinding_IEmailValidator" />" contractName="EmailValidatorServiceReference.IEmailValidator" name="BasicHttpBinding_IEmailValidator" /> | ||
9 | </endpoints> | ||
10 | </configurationSnapshot> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
PerformanceTestProject/Service References/EmailValidatorServiceReference/configuration91.svcinfo
0 → 100644
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <SavedWcfConfigurationInformation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="9.1" CheckSum="xGykQtsEzMd4y3nTxWiobMPeBMo="> | ||
3 | <bindingConfigurations> | ||
4 | <bindingConfiguration bindingType="basicHttpBinding" name="BasicHttpBinding_IEmailValidator"> | ||
5 | <properties> | ||
6 | <property path="/name" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
7 | <serializedValue>BasicHttpBinding_IEmailValidator</serializedValue> | ||
8 | </property> | ||
9 | <property path="/closeTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
10 | <serializedValue /> | ||
11 | </property> | ||
12 | <property path="/openTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
13 | <serializedValue /> | ||
14 | </property> | ||
15 | <property path="/receiveTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
16 | <serializedValue /> | ||
17 | </property> | ||
18 | <property path="/sendTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
19 | <serializedValue /> | ||
20 | </property> | ||
21 | <property path="/allowCookies" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
22 | <serializedValue /> | ||
23 | </property> | ||
24 | <property path="/bypassProxyOnLocal" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
25 | <serializedValue /> | ||
26 | </property> | ||
27 | <property path="/hostNameComparisonMode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.HostNameComparisonMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
28 | <serializedValue>StrongWildcard</serializedValue> | ||
29 | </property> | ||
30 | <property path="/maxBufferPoolSize" isComplexType="false" isExplicitlyDefined="true" clrType="System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
31 | <serializedValue /> | ||
32 | </property> | ||
33 | <property path="/maxBufferSize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
34 | <serializedValue>65536</serializedValue> | ||
35 | </property> | ||
36 | <property path="/maxReceivedMessageSize" isComplexType="false" isExplicitlyDefined="true" clrType="System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
37 | <serializedValue /> | ||
38 | </property> | ||
39 | <property path="/proxyAddress" isComplexType="false" isExplicitlyDefined="false" clrType="System.Uri, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
40 | <serializedValue /> | ||
41 | </property> | ||
42 | <property path="/readerQuotas" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.XmlDictionaryReaderQuotasElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
43 | <serializedValue>System.ServiceModel.Configuration.XmlDictionaryReaderQuotasElement</serializedValue> | ||
44 | </property> | ||
45 | <property path="/readerQuotas/maxDepth" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
46 | <serializedValue>0</serializedValue> | ||
47 | </property> | ||
48 | <property path="/readerQuotas/maxStringContentLength" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
49 | <serializedValue>0</serializedValue> | ||
50 | </property> | ||
51 | <property path="/readerQuotas/maxArrayLength" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
52 | <serializedValue>0</serializedValue> | ||
53 | </property> | ||
54 | <property path="/readerQuotas/maxBytesPerRead" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
55 | <serializedValue>0</serializedValue> | ||
56 | </property> | ||
57 | <property path="/readerQuotas/maxNameTableCharCount" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
58 | <serializedValue>0</serializedValue> | ||
59 | </property> | ||
60 | <property path="/textEncoding" isComplexType="false" isExplicitlyDefined="false" clrType="System.Text.Encoding, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
61 | <serializedValue>System.Text.UTF8Encoding</serializedValue> | ||
62 | </property> | ||
63 | <property path="/transferMode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.TransferMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
64 | <serializedValue>Buffered</serializedValue> | ||
65 | </property> | ||
66 | <property path="/useDefaultWebProxy" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
67 | <serializedValue /> | ||
68 | </property> | ||
69 | <property path="/messageEncoding" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.WSMessageEncoding, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
70 | <serializedValue>Text</serializedValue> | ||
71 | </property> | ||
72 | <property path="/security" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.BasicHttpSecurityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
73 | <serializedValue>System.ServiceModel.Configuration.BasicHttpSecurityElement</serializedValue> | ||
74 | </property> | ||
75 | <property path="/security/mode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.BasicHttpSecurityMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
76 | <serializedValue>None</serializedValue> | ||
77 | </property> | ||
78 | <property path="/security/transport" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.HttpTransportSecurityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
79 | <serializedValue>System.ServiceModel.Configuration.HttpTransportSecurityElement</serializedValue> | ||
80 | </property> | ||
81 | <property path="/security/transport/clientCredentialType" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.HttpClientCredentialType, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
82 | <serializedValue>None</serializedValue> | ||
83 | </property> | ||
84 | <property path="/security/transport/proxyCredentialType" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.HttpProxyCredentialType, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
85 | <serializedValue>None</serializedValue> | ||
86 | </property> | ||
87 | <property path="/security/transport/extendedProtectionPolicy" isComplexType="true" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.Configuration.ExtendedProtectionPolicyElement, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
88 | <serializedValue>System.Security.Authentication.ExtendedProtection.Configuration.ExtendedProtectionPolicyElement</serializedValue> | ||
89 | </property> | ||
90 | <property path="/security/transport/extendedProtectionPolicy/policyEnforcement" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.PolicyEnforcement, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
91 | <serializedValue>Never</serializedValue> | ||
92 | </property> | ||
93 | <property path="/security/transport/extendedProtectionPolicy/protectionScenario" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.ProtectionScenario, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
94 | <serializedValue>TransportSelected</serializedValue> | ||
95 | </property> | ||
96 | <property path="/security/transport/extendedProtectionPolicy/customServiceNames" isComplexType="true" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.Configuration.ServiceNameElementCollection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
97 | <serializedValue>(Collection)</serializedValue> | ||
98 | </property> | ||
99 | <property path="/security/transport/realm" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
100 | <serializedValue /> | ||
101 | </property> | ||
102 | <property path="/security/message" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.BasicHttpMessageSecurityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
103 | <serializedValue>System.ServiceModel.Configuration.BasicHttpMessageSecurityElement</serializedValue> | ||
104 | </property> | ||
105 | <property path="/security/message/clientCredentialType" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.BasicHttpMessageCredentialType, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
106 | <serializedValue>UserName</serializedValue> | ||
107 | </property> | ||
108 | <property path="/security/message/algorithmSuite" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Security.SecurityAlgorithmSuite, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
109 | <serializedValue>Default</serializedValue> | ||
110 | </property> | ||
111 | </properties> | ||
112 | </bindingConfiguration> | ||
113 | </bindingConfigurations> | ||
114 | <endpoints> | ||
115 | <endpoint name="BasicHttpBinding_IEmailValidator" contract="EmailValidatorServiceReference.IEmailValidator" bindingType="basicHttpBinding" address="http://vmwinsrv8:8080/EmailValidator" bindingConfiguration="BasicHttpBinding_IEmailValidator"> | ||
116 | <properties> | ||
117 | <property path="/address" isComplexType="false" isExplicitlyDefined="true" clrType="System.Uri, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
118 | <serializedValue>http://vmwinsrv8:8080/EmailValidator</serializedValue> | ||
119 | </property> | ||
120 | <property path="/behaviorConfiguration" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
121 | <serializedValue /> | ||
122 | </property> | ||
123 | <property path="/binding" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
124 | <serializedValue>basicHttpBinding</serializedValue> | ||
125 | </property> | ||
126 | <property path="/bindingConfiguration" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
127 | <serializedValue>BasicHttpBinding_IEmailValidator</serializedValue> | ||
128 | </property> | ||
129 | <property path="/contract" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
130 | <serializedValue>EmailValidatorServiceReference.IEmailValidator</serializedValue> | ||
131 | </property> | ||
132 | <property path="/headers" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.AddressHeaderCollectionElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
133 | <serializedValue>System.ServiceModel.Configuration.AddressHeaderCollectionElement</serializedValue> | ||
134 | </property> | ||
135 | <property path="/headers/headers" isComplexType="false" isExplicitlyDefined="true" clrType="System.ServiceModel.Channels.AddressHeaderCollection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
136 | <serializedValue><Header /></serializedValue> | ||
137 | </property> | ||
138 | <property path="/identity" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.IdentityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
139 | <serializedValue>System.ServiceModel.Configuration.IdentityElement</serializedValue> | ||
140 | </property> | ||
141 | <property path="/identity/userPrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.UserPrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
142 | <serializedValue>System.ServiceModel.Configuration.UserPrincipalNameElement</serializedValue> | ||
143 | </property> | ||
144 | <property path="/identity/userPrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
145 | <serializedValue /> | ||
146 | </property> | ||
147 | <property path="/identity/servicePrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.ServicePrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
148 | <serializedValue>System.ServiceModel.Configuration.ServicePrincipalNameElement</serializedValue> | ||
149 | </property> | ||
150 | <property path="/identity/servicePrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
151 | <serializedValue /> | ||
152 | </property> | ||
153 | <property path="/identity/dns" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.DnsElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
154 | <serializedValue>System.ServiceModel.Configuration.DnsElement</serializedValue> | ||
155 | </property> | ||
156 | <property path="/identity/dns/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
157 | <serializedValue /> | ||
158 | </property> | ||
159 | <property path="/identity/rsa" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.RsaElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
160 | <serializedValue>System.ServiceModel.Configuration.RsaElement</serializedValue> | ||
161 | </property> | ||
162 | <property path="/identity/rsa/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
163 | <serializedValue /> | ||
164 | </property> | ||
165 | <property path="/identity/certificate" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
166 | <serializedValue>System.ServiceModel.Configuration.CertificateElement</serializedValue> | ||
167 | </property> | ||
168 | <property path="/identity/certificate/encodedValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
169 | <serializedValue /> | ||
170 | </property> | ||
171 | <property path="/identity/certificateReference" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateReferenceElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
172 | <serializedValue>System.ServiceModel.Configuration.CertificateReferenceElement</serializedValue> | ||
173 | </property> | ||
174 | <property path="/identity/certificateReference/storeName" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreName, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
175 | <serializedValue>My</serializedValue> | ||
176 | </property> | ||
177 | <property path="/identity/certificateReference/storeLocation" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreLocation, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
178 | <serializedValue>LocalMachine</serializedValue> | ||
179 | </property> | ||
180 | <property path="/identity/certificateReference/x509FindType" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.X509FindType, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
181 | <serializedValue>FindBySubjectDistinguishedName</serializedValue> | ||
182 | </property> | ||
183 | <property path="/identity/certificateReference/findValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
184 | <serializedValue /> | ||
185 | </property> | ||
186 | <property path="/identity/certificateReference/isChainIncluded" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
187 | <serializedValue>False</serializedValue> | ||
188 | </property> | ||
189 | <property path="/name" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
190 | <serializedValue>BasicHttpBinding_IEmailValidator</serializedValue> | ||
191 | </property> | ||
192 | <property path="/kind" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
193 | <serializedValue /> | ||
194 | </property> | ||
195 | <property path="/endpointConfiguration" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||
196 | <serializedValue /> | ||
197 | </property> | ||
198 | </properties> | ||
199 | </endpoint> | ||
200 | </endpoints> | ||
201 | </SavedWcfConfigurationInformation> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
PerformanceTestProject/app.config
0 → 100644
1 | <?xml version="1.0" encoding="utf-8" ?> | ||
2 | <configuration> | ||
3 | <system.serviceModel> | ||
4 | <diagnostics performanceCounters="ServiceOnly" /> | ||
5 | <bindings> | ||
6 | <basicHttpBinding> | ||
7 | <binding name="BasicHttpBinding_IEmailValidator" /> | ||
8 | </basicHttpBinding> | ||
9 | </bindings> | ||
10 | <client> | ||
11 | <endpoint address="http://vmwinsrv8:8080/EmailValidator" binding="basicHttpBinding" | ||
12 | bindingConfiguration="BasicHttpBinding_IEmailValidator" contract="EmailValidatorServiceReference.IEmailValidator" | ||
13 | name="BasicHttpBinding_IEmailValidator" /> | ||
14 | </client> | ||
15 | </system.serviceModel> | ||
16 | </configuration> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
Taurus.testsettings
0 → 100644
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <TestSettings name="Taurus" id="2f8ab51a-cbad-4cf1-aab3-ae44b1596084" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010"> | ||
3 | <Description>These are default test settings for a local test run.</Description> | ||
4 | <RemoteController name="taurus.lightsinline.se" /> | ||
5 | <Execution location="Remote"> | ||
6 | <TestTypeSpecific> | ||
7 | <UnitTestRunConfig testTypeId="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b"> | ||
8 | <AssemblyResolution> | ||
9 | <TestDirectory useLoadContext="true" /> | ||
10 | </AssemblyResolution> | ||
11 | </UnitTestRunConfig> | ||
12 | <WebTestRunConfiguration testTypeId="4e7599fa-5ecb-43e9-a887-cd63cf72d207"> | ||
13 | <Browser name="Internet Explorer 7.0"> | ||
14 | <Headers> | ||
15 | <Header name="User-Agent" value="Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)" /> | ||
16 | <Header name="Accept" value="*/*" /> | ||
17 | <Header name="Accept-Language" value="{{$IEAcceptLanguage}}" /> | ||
18 | <Header name="Accept-Encoding" value="GZIP" /> | ||
19 | </Headers> | ||
20 | </Browser> | ||
21 | </WebTestRunConfiguration> | ||
22 | </TestTypeSpecific> | ||
23 | <AgentRule name="AllAgentsDefaultRole"> | ||
24 | </AgentRule> | ||
25 | </Execution> | ||
26 | </TestSettings> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
TraceAndTestImpact.testsettings
0 → 100644
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <TestSettings name="Trace and Test Impact" id="1dea9a0f-0409-4efc-a227-6644f4af8aea" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010"> | ||
3 | <Description>These are test settings for Trace and Test Impact.</Description> | ||
4 | <Execution> | ||
5 | <TestTypeSpecific /> | ||
6 | <AgentRule name="Execution Agents"> | ||
7 | <DataCollectors> | ||
8 | <DataCollector uri="datacollector://microsoft/SystemInfo/1.0" assemblyQualifiedName="Microsoft.VisualStudio.TestTools.DataCollection.SystemInfo.SystemInfoDataCollector, Microsoft.VisualStudio.TestTools.DataCollection.SystemInfo, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" friendlyName="System Information"> | ||
9 | </DataCollector> | ||
10 | <DataCollector uri="datacollector://microsoft/ActionLog/1.0" assemblyQualifiedName="Microsoft.VisualStudio.TestTools.ManualTest.ActionLog.ActionLogPlugin, Microsoft.VisualStudio.TestTools.ManualTest.ActionLog, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" friendlyName="Actions"> | ||
11 | </DataCollector> | ||
12 | <DataCollector uri="datacollector://microsoft/HttpProxy/1.0" assemblyQualifiedName="Microsoft.VisualStudio.TraceCollector.HttpProxyCollector, Microsoft.VisualStudio.TraceCollector, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" friendlyName="ASP.NET Client Proxy for IntelliTrace and Test Impact"> | ||
13 | </DataCollector> | ||
14 | <DataCollector uri="datacollector://microsoft/TestImpact/1.0" assemblyQualifiedName="Microsoft.VisualStudio.TraceCollector.TestImpactDataCollector, Microsoft.VisualStudio.TraceCollector, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" friendlyName="Test Impact"> | ||
15 | </DataCollector> | ||
16 | <DataCollector uri="datacollector://microsoft/TraceDebugger/1.0" assemblyQualifiedName="Microsoft.VisualStudio.TraceCollector.TraceDebuggerDataCollector, Microsoft.VisualStudio.TraceCollector, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" friendlyName="IntelliTrace"> | ||
17 | </DataCollector> | ||
18 | </DataCollectors> | ||
19 | </AgentRule> | ||
20 | </Execution> | ||
21 | </TestSettings> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
WCFPerformanceServiceDemo.sln
0 → 100644
1 | | ||
2 | Microsoft Visual Studio Solution File, Format Version 12.00 | ||
3 | # Visual Studio 2013 | ||
4 | VisualStudioVersion = 12.0.21005.1 | ||
5 | MinimumVisualStudioVersion = 10.0.40219.1 | ||
6 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{8784D56B-3A97-4F31-9E2F-36A6099C8D8E}" | ||
7 | ProjectSection(SolutionItems) = preProject | ||
8 | Local.testsettings = Local.testsettings | ||
9 | Taurus.testsettings = Taurus.testsettings | ||
10 | TraceAndTestImpact.testsettings = TraceAndTestImpact.testsettings | ||
11 | WCFPerformanceServiceDemo.vsmdi = WCFPerformanceServiceDemo.vsmdi | ||
12 | EndProjectSection | ||
13 | EndProject | ||
14 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PerformanceService", "PerformanceService\PerformanceService.csproj", "{298113F4-7126-4E1A-ADD1-F6C5327370E8}" | ||
15 | EndProject | ||
16 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConsoleHostApp", "ConsoleHostApp\ConsoleHostApp.csproj", "{111EAA75-6E7A-48CA-8C9D-56EC2FE08BB2}" | ||
17 | EndProject | ||
18 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PerformanceTestProject", "PerformanceTestProject\PerformanceTestProject.csproj", "{BF25A2FB-91ED-4BE2-8772-FC5E2380B86D}" | ||
19 | EndProject | ||
20 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PluginLib", "LoadTestLib\LoadTestLib\PluginLib.csproj", "{226AB0FE-47CF-4C69-8330-C86327AA4246}" | ||
21 | EndProject | ||
22 | Global | ||
23 | GlobalSection(SolutionConfigurationPlatforms) = preSolution | ||
24 | Debug|Any CPU = Debug|Any CPU | ||
25 | Debug|Mixed Platforms = Debug|Mixed Platforms | ||
26 | Debug|x86 = Debug|x86 | ||
27 | Release|Any CPU = Release|Any CPU | ||
28 | Release|Mixed Platforms = Release|Mixed Platforms | ||
29 | Release|x86 = Release|x86 | ||
30 | EndGlobalSection | ||
31 | GlobalSection(ProjectConfigurationPlatforms) = postSolution | ||
32 | {298113F4-7126-4E1A-ADD1-F6C5327370E8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
33 | {298113F4-7126-4E1A-ADD1-F6C5327370E8}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
34 | {298113F4-7126-4E1A-ADD1-F6C5327370E8}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU | ||
35 | {298113F4-7126-4E1A-ADD1-F6C5327370E8}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU | ||
36 | {298113F4-7126-4E1A-ADD1-F6C5327370E8}.Debug|x86.ActiveCfg = Debug|Any CPU | ||
37 | {298113F4-7126-4E1A-ADD1-F6C5327370E8}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
38 | {298113F4-7126-4E1A-ADD1-F6C5327370E8}.Release|Any CPU.Build.0 = Release|Any CPU | ||
39 | {298113F4-7126-4E1A-ADD1-F6C5327370E8}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU | ||
40 | {298113F4-7126-4E1A-ADD1-F6C5327370E8}.Release|Mixed Platforms.Build.0 = Release|Any CPU | ||
41 | {298113F4-7126-4E1A-ADD1-F6C5327370E8}.Release|x86.ActiveCfg = Release|Any CPU | ||
42 | {111EAA75-6E7A-48CA-8C9D-56EC2FE08BB2}.Debug|Any CPU.ActiveCfg = Debug|x86 | ||
43 | {111EAA75-6E7A-48CA-8C9D-56EC2FE08BB2}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 | ||
44 | {111EAA75-6E7A-48CA-8C9D-56EC2FE08BB2}.Debug|Mixed Platforms.Build.0 = Debug|x86 | ||
45 | {111EAA75-6E7A-48CA-8C9D-56EC2FE08BB2}.Debug|x86.ActiveCfg = Debug|x86 | ||
46 | {111EAA75-6E7A-48CA-8C9D-56EC2FE08BB2}.Debug|x86.Build.0 = Debug|x86 | ||
47 | {111EAA75-6E7A-48CA-8C9D-56EC2FE08BB2}.Release|Any CPU.ActiveCfg = Release|x86 | ||
48 | {111EAA75-6E7A-48CA-8C9D-56EC2FE08BB2}.Release|Mixed Platforms.ActiveCfg = Release|x86 | ||
49 | {111EAA75-6E7A-48CA-8C9D-56EC2FE08BB2}.Release|Mixed Platforms.Build.0 = Release|x86 | ||
50 | {111EAA75-6E7A-48CA-8C9D-56EC2FE08BB2}.Release|x86.ActiveCfg = Release|x86 | ||
51 | {111EAA75-6E7A-48CA-8C9D-56EC2FE08BB2}.Release|x86.Build.0 = Release|x86 | ||
52 | {BF25A2FB-91ED-4BE2-8772-FC5E2380B86D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
53 | {BF25A2FB-91ED-4BE2-8772-FC5E2380B86D}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
54 | {BF25A2FB-91ED-4BE2-8772-FC5E2380B86D}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU | ||
55 | {BF25A2FB-91ED-4BE2-8772-FC5E2380B86D}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU | ||
56 | {BF25A2FB-91ED-4BE2-8772-FC5E2380B86D}.Debug|x86.ActiveCfg = Debug|Any CPU | ||
57 | {BF25A2FB-91ED-4BE2-8772-FC5E2380B86D}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
58 | {BF25A2FB-91ED-4BE2-8772-FC5E2380B86D}.Release|Any CPU.Build.0 = Release|Any CPU | ||
59 | {BF25A2FB-91ED-4BE2-8772-FC5E2380B86D}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU | ||
60 | {BF25A2FB-91ED-4BE2-8772-FC5E2380B86D}.Release|Mixed Platforms.Build.0 = Release|Any CPU | ||
61 | {BF25A2FB-91ED-4BE2-8772-FC5E2380B86D}.Release|x86.ActiveCfg = Release|Any CPU | ||
62 | {226AB0FE-47CF-4C69-8330-C86327AA4246}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
63 | {226AB0FE-47CF-4C69-8330-C86327AA4246}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
64 | {226AB0FE-47CF-4C69-8330-C86327AA4246}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU | ||
65 | {226AB0FE-47CF-4C69-8330-C86327AA4246}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU | ||
66 | {226AB0FE-47CF-4C69-8330-C86327AA4246}.Debug|x86.ActiveCfg = Debug|Any CPU | ||
67 | {226AB0FE-47CF-4C69-8330-C86327AA4246}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
68 | {226AB0FE-47CF-4C69-8330-C86327AA4246}.Release|Any CPU.Build.0 = Release|Any CPU | ||
69 | {226AB0FE-47CF-4C69-8330-C86327AA4246}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU | ||
70 | {226AB0FE-47CF-4C69-8330-C86327AA4246}.Release|Mixed Platforms.Build.0 = Release|Any CPU | ||
71 | {226AB0FE-47CF-4C69-8330-C86327AA4246}.Release|x86.ActiveCfg = Release|Any CPU | ||
72 | EndGlobalSection | ||
73 | GlobalSection(SolutionProperties) = preSolution | ||
74 | HideSolutionNode = FALSE | ||
75 | EndGlobalSection | ||
76 | GlobalSection(TestCaseManagementSettings) = postSolution | ||
77 | CategoryFile = WCFPerformanceServiceDemo.vsmdi | ||
78 | EndGlobalSection | ||
79 | EndGlobal |
WCFPerformanceServiceDemo.vsmdi
0 → 100644
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <TestLists xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010"> | ||
3 | <TestList name="Lists of Tests" id="8c43106b-9dc1-4907-a29f-aa66a61bf5b6"> | ||
4 | <RunConfiguration id="df2338c8-420f-4a05-9bb3-48c6f2903d23" name="Local" storage="local.testsettings" type="Microsoft.VisualStudio.TestTools.Common.TestRunConfiguration, Microsoft.VisualStudio.QualityTools.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> | ||
5 | </TestList> | ||
6 | </TestLists> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
-
Please register or sign in to post a comment