Commit 4ce8d5dd 4ce8d5ddf187bd01d9446b2f2d611190172de00c by Christian Gerdes
2 parents 0231a979 e20fc7a9
......@@ -154,3 +154,4 @@ $RECYCLE.BIN/
# Mac desktop service store files
.DS_Store
/.vs/LIL_VSTT_Plugins/v15/sqlite3/storage.ide
......

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
VisualStudioVersion = 14.0.24720.0
# Visual Studio 2013
VisualStudioVersion = 12.0.40629.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{8ADAFB91-C10D-42C8-8499-30B3692C27F3}"
ProjectSection(SolutionItems) = preProject
......@@ -9,7 +9,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
Local.testsettings = Local.testsettings
Notes.md = Notes.md
README.md = README.md
WIN-62BJ8PRQ3MQ.testsettings = WIN-62BJ8PRQ3MQ.testsettings
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LIL_VSTT_Plugins", "LIL_VSTT_Plugins\LIL_VSTT_Plugins.csproj", "{06A22593-601E-4386-917A-9835DE30E14E}"
......
......@@ -23,6 +23,37 @@ using Microsoft.VisualStudio.TestTools.LoadTesting;
namespace LIL_VSTT_Plugins
{
[DisplayName("Add Parameter To Reporting Name")]
[Description("This request plugin will add the specified parameter to the end of the reporting name of the request")]
public class AddParameterToReportingName : WebTestRequestPlugin
{
[DisplayName("Parameter Name"), DefaultValue(""), Description("Name of the parameter which value should be added to the reporting name.")]
public string ParameterName { get; set; }
[DisplayName("Add to empty Report Name"), DefaultValue(false), Description("The parameter value will be added to report name even if it not set. Warning, will also set all redirects to the same name.")]
public bool AddToEmptyReportName { get; set; }
[DisplayName("Run on dependent requests"), DefaultValue(false), Description("The parameter value will be set as the report name on all dependent requests (only works in loadtests)")]
public bool RunOnDependents { get; set; }
public override void PreRequest(object sender, PreRequestEventArgs e)
{
base.PreRequest(sender, e);
if (e.WebTest.Context.ContainsKey(ParameterName) && (!String.IsNullOrEmpty(e.Request.ReportingName) || AddToEmptyReportName))
{
e.Request.ReportingName = e.Request.ReportingName + e.WebTest.Context[ParameterName].ToString();
}
}
public override void PostRequest(object sender, PostRequestEventArgs e)
{
base.PostRequest(sender, e);
if (RunOnDependents && e.WebTest.Context.ContainsKey(ParameterName))
{
foreach (WebTestRequest w in e.Request.DependentRequests)
{
w.ReportingName = e.WebTest.Context[ParameterName].ToString();
}
}
}
}
[DisplayName("Stop Here After")]
[Description("Add this plugin to a request in order to force the webtest to stop after the request has finished.")]
public class StopHereAfter : WebTestRequestPlugin
......@@ -110,7 +141,7 @@ namespace LIL_VSTT_Plugins
[DisplayName("Think Time Emulator 10/190"), Description("Sets a context parameter named ThinkTime in each starting test to a random value between 10%-190% of the specified value.")]
public class ThinkTimeEmulator10190 : ILoadTestPlugin
{
[DisplayName("ThinkTime"), DefaultValue(0), Description("The Think Time to be used seconds. Default is 0.")]
[DisplayName("ThinkTime"), DefaultValue(35), Description("The Think Time to be used seconds. Default is 35.")]
public int ThinkTime { get; set; }
[DisplayName("Minimum"), DefaultValue(10), Description("Percentage of ThinkTime to be used as the minimum value")]
public int Min { get; set; }
......@@ -135,6 +166,12 @@ namespace LIL_VSTT_Plugins
if (!String.IsNullOrEmpty(RegExScenarioName))
rxScenarioName = new Regex(RegExScenarioName);
// Sanity checks
if (ThinkTime == 0) ThinkTime = 35;
if (Min > Max) { Min = 100; Max = 100; }
if (Min == 0) Min = 10;
if (Max == 0) Max = 190;
//connect to the TestStarting event.
mLoadTest.TestStarting += new EventHandler<TestStartingEventArgs>(mLoadTest_TestStarting);
}
......
......@@ -37,8 +37,9 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
<CodeAnalysisRuleSet>C:\Program Files (x86)\Microsoft Visual Studio 14.0\Team Tools\Static Analysis Tools\Rule Sets\MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRuleSet></CodeAnalysisRuleSet>
<RunCodeAnalysis>false</RunCodeAnalysis>
<NoWarn>1692;0618;3021</NoWarn>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.VisualStudio.QualityTools.LoadTestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
......
......@@ -177,6 +177,7 @@ namespace LIL_VSTT_Plugins
private string myColNames = "";
private bool myUseRandom = true;
private bool myUseUnique = false;
private bool myUseUniqueFiles = false;
private bool myUseUniqueIteration = false;
private bool myUseUniqueTestIteration = false;
private bool myLogToFile = false;
......@@ -189,10 +190,12 @@ namespace LIL_VSTT_Plugins
private bool stop = false;
private int timeWait = 0;
private int nextAvailableRow = 0;
private StringCollection myParams = new StringCollection();
private Random random = new Random();
private Dictionary<string, int> testIterations = new Dictionary<string, int>();
private Dictionary<int, int> userRow = new Dictionary<int, int>();
private LoadTest m_loadTest;
#region guiparams
......@@ -287,6 +290,15 @@ namespace LIL_VSTT_Plugins
set { myUseUnique = value; }
}
[DisplayName("Välj unikt per VU per Testdatafil?")]
[Description("Ange True om du vill att varje testdatafil (CSV) hanteras separat för varje unik VU. Pluginet kommer då komma ihåg vilka rader som delats ut separat för varje fil.")]
[DefaultValue(false)]
public bool Use_UniqueFiles
{
get { return myUseUniqueFiles; }
set { myUseUniqueFiles = value; }
}
[DisplayName("Välj unikt per Iteration?")]
[Description("Ange True om du vill att varje LoadTest VU ska ha sitt eget unika värde för varje iteration av alla tester, dvs aldrig återanvändas av någon VU i något test. Gäller före unikt per test iteration.")]
[DefaultValue(false)]
......@@ -371,10 +383,12 @@ namespace LIL_VSTT_Plugins
if (myParams.Count > 0)
{
if (myUseUniqueIteration)
m_loadTest.TestStarting += new EventHandler<TestStartingEventArgs>(loadTestStartingUniqueIteration);
else if(myUseUniqueTestIteration)
if (myUseUniqueTestIteration)
m_loadTest.TestStarting += new EventHandler<TestStartingEventArgs>(loadTestStartingUniqueTestIteration);
else if (myUseUniqueIteration)
m_loadTest.TestStarting += new EventHandler<TestStartingEventArgs>(loadTestStartingUniqueIteration);
else if (myUseUniqueFiles)
m_loadTest.TestStarting += new EventHandler<TestStartingEventArgs>(loadTestStartingUniqueFiles);
else if (myUseUnique)
m_loadTest.TestStarting += new EventHandler<TestStartingEventArgs>(loadTestStartingUnique);
else if (myUseRandom)
......@@ -434,6 +448,28 @@ namespace LIL_VSTT_Plugins
setParameters(this.getSeqUser(e.UserContext.CompletedTestCount), e);
}
void loadTestStartingUniqueFiles(object sender, TestStartingEventArgs e)
{
if (shouldRun(e))
{
int row = 0;
// Go single threaded
lock (userRow)
{
// Check if the user already has a row in our file, otherwise get the next one
if (userRow.ContainsKey(e.UserContext.UserId)) row = userRow[e.UserContext.UserId];
else
{
// New user, get the next row and increase the counter
row = nextAvailableRow++;
// Save the row for this user
userRow[e.UserContext.UserId] = row;
}
}
setParameters(this.getSeqUser(row), e);
}
}
void loadTestStartingUnique(object sender, TestStartingEventArgs e)
{
setParameters(this.getSeqUser(e.UserContext.UserId), e);
......
......@@ -344,7 +344,6 @@ namespace LIL_VSTT_Plugins
{
if (e.ResponseExists && (int)e.Response.StatusCode >= 500) e.Request.Outcome = Outcome.Fail;
WebTestRequestCollection depsToRemove = new WebTestRequestCollection();
foreach (WebTestRequest r in e.Request.DependentRequests)
{
......
......@@ -68,66 +68,20 @@
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="UnitTest1.cs" />
<Compile Include="WebTest1Coded.cs" />
</ItemGroup>
<ItemGroup>
<None Include="LoadTest2.loadtest">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="LoadTest1.loadtest">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="LoadTest3.loadtest">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="LoadTest5.loadtest">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="LoadTest4.loadtest">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="LoadTest6.loadtest">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<Content Include="UserdataFew.csv">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<None Include="WebTest2.webtest">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="WebTest22.webtest">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="WebTest21.webtest">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="WebTest6.webtest">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="WebTest5.webtest">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="WebTest4.webtest">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="WebTest3.webtest">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<Content Include="Userdata.csv">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<None Include="WebTest1.webtest">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="WebTest7 - Copy.webtest">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="WebTest7.webtest">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="WebTest8.webtest">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\LIL_VSTT_Plugins\LIL_VSTT_Plugins.csproj">
......
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30128.1
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace TestProject1
{
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.VisualStudio.TestTools.WebTesting;
public class WebTest1Coded : WebTest
{
public WebTest1Coded()
{
this.PreAuthenticate = true;
}
public override IEnumerator<WebTestRequest> GetRequestEnumerator()
{
WebTestRequest request1 = new WebTestRequest("http://www.lil.nu/");
request1.ParseDependentRequests = false;
request1.Encoding = System.Text.Encoding.GetEncoding("utf-8");
request1.Headers.Add(new WebTestRequestHeader("Cookie", "TestCookie=\"test,test\""));
yield return request1;
request1 = null;
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<WebTest Name="WebTest2" Id="97416298-3dc2-4f16-a28f-75470ee03ec8" 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="" ResultsLocale="">
<Items>
<Request Method="GET" Guid="b9a8ca3a-ceb3-4531-b567-9ee2dbd79c10" Version="1.1" Url="https://ort-api.dev.minpension.se/medborgare/197503140555" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
</Items>
<WebTestPlugins>
<WebTestPlugin Classname="LIL_VSTT_Plugins.ClientCertificatePlugin, LIL_VSTT_Plugins, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null" DisplayName="Client Certificate" Description="(C) Copyright 2016 LIGHTS IN LINE AB&#xD;&#xA;Sätter webtestet att använda ett specifikt client cert för SSL. Certifikatet installeras automatiskt i Windows User Certificate Store.">
<RuleParameters>
<RuleParameter Name="pCertificatePath" Value="C:\Temp\lightsinline.pfx" />
<RuleParameter Name="pCertificatePathParameter" Value="" />
<RuleParameter Name="pCertificatePassword" Value="ensfyr" />
<RuleParameter Name="pCertificatePasswordParameter" Value="" />
<RuleParameter Name="pDebug" Value="False" />
<RuleParameter Name="pInstallTrusted" Value="True" />
<RuleParameter Name="pInstallUntrusted" Value="True" />
</RuleParameters>
</WebTestPlugin>
</WebTestPlugins>
</WebTest>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<WebTest Name="WebTest2" Id="9af8354e-b982-4f5a-80f9-777eaed55003" 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="WebTest2.0af40a55-b204-4b39-8847-71e26a47524d.rec.webtestresult" ResultsLocale="">
<Items>
<Request Method="GET" Guid="e02258d2-a380-44f4-891d-a8c829b5428c" Version="1.1" Url="http://www.lightsinline.se/" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
<TransactionTimer Name="Transaction2">
<Items>
<Request Method="GET" Guid="e02258d2-a380-44f4-891d-a8c829b5428c" Version="1.1" Url="http://www.lightsinline.se/" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
<Request Method="GET" Guid="e02258d2-a380-44f4-891d-a8c829b5428c" Version="1.1" Url="http://www.lightsinline.se/" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
</Items>
</TransactionTimer>
</Items>
<ContextParameters>
<ContextParameter Name="Parameter1" Value="Testval" />
</ContextParameters>
<WebTestPlugins>
<WebTestPlugin Classname="LIL_VSTT_Plugins.dataGenTimestamp, LIL_VSTT_Plugins, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null" DisplayName="Data Generator Timestamp" Description="(C) Copyright 2011 LIGHTS IN LINE AB&#xD;&#xA;Genererar en timestamp som context parameter">
<RuleParameters>
<RuleParameter Name="ParamNameVal" Value="TimeStampParameter1" />
<RuleParameter Name="MillisecondsVal" Value="False" />
<RuleParameter Name="PrePageVal" Value="False" />
<RuleParameter Name="PreTransactionVal" Value="False" />
<RuleParameter Name="PreRequestVal" Value="False" />
</RuleParameters>
</WebTestPlugin>
</WebTestPlugins>
</WebTest>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<WebTest Name="WebTest2 - Copy" Id="b8fad392-6953-4eda-9be0-2037277680f6" 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="WebTest2.0af40a55-b204-4b39-8847-71e26a47524d.rec.webtestresult" ResultsLocale="">
<Items>
<Request Method="GET" Guid="e02258d2-a380-44f4-891d-a8c829b5428c" Version="1.1" Url="http://www.lightsinline.se/" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
<TransactionTimer Name="Transaction2">
<Items>
<Request Method="GET" Guid="e02258d2-a380-44f4-891d-a8c829b5428c" Version="1.1" Url="http://www.lightsinline.se/" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
<Request Method="GET" Guid="e02258d2-a380-44f4-891d-a8c829b5428c" Version="1.1" Url="http://www.lightsinline.se/" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
</Items>
</TransactionTimer>
</Items>
<ContextParameters>
<ContextParameter Name="Parameter1" Value="Testval" />
</ContextParameters>
<WebTestPlugins>
<WebTestPlugin Classname="LIL_VSTT_Plugins.dataGenTimestamp, LIL_VSTT_Plugins, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null" DisplayName="Data Generator Timestamp" Description="(C) Copyright 2011 LIGHTS IN LINE AB&#xD;&#xA;Genererar en timestamp som context parameter">
<RuleParameters>
<RuleParameter Name="ParamNameVal" Value="TimeStampParameter1" />
<RuleParameter Name="MillisecondsVal" Value="False" />
<RuleParameter Name="PrePageVal" Value="False" />
<RuleParameter Name="PreTransactionVal" Value="False" />
<RuleParameter Name="PreRequestVal" Value="False" />
</RuleParameters>
</WebTestPlugin>
</WebTestPlugins>
</WebTest>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<WebTest Name="WebTest3" Id="f36a8078-a24b-41a0-ac62-678ed0b4ac50" Owner="" Priority="2147483647" Enabled="True" CssProjectStructure="" CssIteration="" Timeout="0" WorkItemIds="" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010" Description="" CredentialUserName="" CredentialPassword="" PreAuthenticate="True" Proxy="proxyvip:8080" StopOnError="False" RecordedResultFile="" ResultsLocale="">
<Items>
<Request Method="GET" Guid="359feba0-105f-4dbf-a630-32d640c10817" Version="1.1" Url="https://www.lightsinline.se/" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
<Request Method="GET" Guid="88ecadc7-6996-40c3-b058-eb2734863145" Version="1.1" Url="https://spg21.ws1.s02.ttm.swedbank.se/" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
</Items>
<WebTestPlugins>
<WebTestPlugin Classname="LIL_VSTT_Plugins.ServiceManagerWebTestPlugin, LIL_VSTT_Plugins, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null" DisplayName="Service Manager Config" Description="(C) Copyright 2015 LIGHTS IN LINE AB&#xD;&#xA;Sätter config värden i Service Manager instansen för hela testet.">
<RuleParameters>
<RuleParameter Name="exp100" Value="True" />
<RuleParameter Name="maxIdle" Value="100" />
<RuleParameter Name="keepAlive" Value="False" />
<RuleParameter Name="timeOut" Value="5000" />
<RuleParameter Name="interVal" Value="1000" />
<RuleParameter Name="useNagle" Value="False" />
<RuleParameter Name="useTls12" Value="False" />
<RuleParameter Name="useProxy" Value="True" />
<RuleParameter Name="proxyOverride" Value="True" />
<RuleParameter Name="proxyBypassLocal" Value="False" />
<RuleParameter Name="proxyBypass" Value="ttm.swedbank.se" />
<RuleParameter Name="proxyURI" Value="http://proxyvip:8080" />
<RuleParameter Name="proxyUser" Value="p950gec" />
<RuleParameter Name="proxyPass" Value="p950gec" />
</RuleParameters>
</WebTestPlugin>
<WebTestPlugin Classname="LIL_VSTT_Plugins.dataGenInteger, LIL_VSTT_Plugins, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null" DisplayName="Data Generator Integer" Description="(C) Copyright 2016 LIGHTS IN LINE AB&#xD;&#xA;Genererar en slumpad integer som context parameter">
<RuleParameters>
<RuleParameter Name="ParamNameVal" Value="RandomInteger" />
<RuleParameter Name="IntegerMin" Value="0" />
<RuleParameter Name="IntegerMax" Value="100" />
<RuleParameter Name="PrePageVal" Value="True" />
<RuleParameter Name="PreTransactionVal" Value="False" />
<RuleParameter Name="PreRequestVal" Value="False" />
</RuleParameters>
</WebTestPlugin>
<WebTestPlugin Classname="LIL_VSTT_Plugins.WebTestDependentRegexFilter, LIL_VSTT_Plugins, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null" DisplayName="Dynamisk URL Regex filter" Description="(C) Copyright 2011 LIGHTS IN LINE AB&#xD;&#xA;Filter för att ignorera vissa objekt på websidor så de inte laddas ner automatiskt.">
<RuleParameters>
<RuleParameter Name="FilterString" Value="stat.swedbank.se" />
<RuleParameter Name="Exclude" Value="True" />
</RuleParameters>
</WebTestPlugin>
</WebTestPlugins>
</WebTest>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<WebTest Name="WebTest4" Id="5f8fe34b-e853-4a88-95cb-a8e963383b09" 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="" ResultsLocale="">
<Items>
<Request Method="POST" Guid="60e123b6-6947-47f0-85cb-473647f73db1" Version="1.1" Url="https://ppdmzkw2/nak1/na_epersondata/V2/namnsokning" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False">
<StringHttpBody ContentType="text/xml" InsertByteOrderMark="False">PABzAG8AYQBwAGUAbgB2ADoARQBuAHYAZQBsAG8AcABlACAAeABtAGwAbgBzADoAcwBvAGEAcABlAG4AdgA9ACIAaAB0AHQAcAA6AC8ALwBzAGMAaABlAG0AYQBzAC4AeABtAGwAcwBvAGEAcAAuAG8AcgBnAC8AcwBvAGEAcAAvAGUAbgB2AGUAbABvAHAAZQAvACIAIAB4AG0AbABuAHMAOgB4AHMAaQA9ACIAaAB0AHQAcAA6AC8ALwB3AHcAdwAuAHcAMwAuAG8AcgBnAC8AMgAwADAAMQAvAFgATQBMAFMAYwBoAGUAbQBhAC0AaQBuAHMAdABhAG4AYwBlACIAIAB4AG0AbABuAHMAOgB2ADEAPQAiAGgAdAB0AHAAOgAvAC8AeABtAGwAcwAuAHMAawBhAHQAdABlAHYAZQByAGsAZQB0AC4AcwBlAC8AcwBlAC8AcwBrAGEAdAB0AGUAdgBlAHIAawBlAHQALwBmAG8AbABrAGIAbwBrAGYAbwByAGkAbgBnAC8AbgBhAC8AZQBwAGUAcgBzAG8AbgBkAGEAdABhAC8AVgAxACIAPgANAAoAIAAgADwAcwBvAGEAcABlAG4AdgA6AEgAZQBhAGQAZQByACAALwA+AA0ACgAgACAAPABzAG8AYQBwAGUAbgB2ADoAQgBvAGQAeQA+AA0ACgAgACAAIAAgADwAdgAxADoATgBhAG0AbgBzAG8AawBuAGkAbgBnAFIAZQBxAHUAZQBzAHQAPgANAAoAIAAgACAAIAAgACAAPAB2ADEAOgBCAGUAcwB0AGEAbABsAG4AaQBuAGcAPgANAAoAIAAgACAAIAAgACAAIAAgADwAdgAxADoATwByAGcATgByAD4AMQA2ADIAMAAyADEAMAAwADQANwA0ADgAPAAvAHYAMQA6AE8AcgBnAE4AcgA+AA0ACgAgACAAIAAgACAAIAAgACAAPAB2ADEAOgBCAGUAcwB0AGEAbABsAG4AaQBuAGcAcwBJAGQAPgAwADAAMAAwADAAMAA3ADkALQBGAE8AMAAxAC0AMAAwADAAMQA8AC8AdgAxADoAQgBlAHMAdABhAGwAbABuAGkAbgBnAHMASQBkAD4ADQAKACAAIAAgACAAIAAgADwALwB2ADEAOgBCAGUAcwB0AGEAbABsAG4AaQBuAGcAPgANAAoAIAAgACAAIAAgACAAPAB2ADEAOgBTAG8AawB2AGkAbABsAGsAbwByAE4AYQBtAG4APgANAAoAIAAgACAAIAAgACAAIAAgADwAdgAxADoAQQBkAHIAZQBzAHMAPgBNAEEARwBBAFMASQBOAFMARwBBAFQAQQBOACAANQAgAEEAIABMAEcASAAgADEAMAAwADMAPAAvAHYAMQA6AEEAZAByAGUAcwBzAD4ADQAKACAAIAAgACAAIAAgACAAIAA8AHYAMQA6AEUAZgB0AGUAcgBNAGUAbABsAGEAbgBOAGEAbQBuAD4ATgB1AHQAZQBtAGIAZQBpADwALwB2ADEAOgBFAGYAdABlAHIATQBlAGwAbABhAG4ATgBhAG0AbgA+AA0ACgAgACAAIAAgACAAIAAgACAAPAB2ADEAOgBGAG8AZABlAGwAcwBlAHQAaQBkAEYAcgBvAG0AIAB4AHMAaQA6AG4AaQBsAD0AIgB0AHIAdQBlACIAPgA8AC8AdgAxADoARgBvAGQAZQBsAHMAZQB0AGkAZABGAHIAbwBtAD4ADQAKACAAIAAgACAAIAAgACAAIAA8AHYAMQA6AEYAbwBkAGUAbABzAGUAdABpAGQAVABvAG0AIAB4AHMAaQA6AG4AaQBsAD0AIgB0AHIAdQBlACIAPgA8AC8AdgAxADoARgBvAGQAZQBsAHMAZQB0AGkAZABUAG8AbQA+AA0ACgAgACAAIAAgACAAIAAgACAAPAB2ADEAOgBGAG8AcgBuAGEAbQBuAD4AQQBiAGQAaQBrAGgAYQBkAGUAcgAgAE0AbwBoAGEAbQBlAGQAPAAvAHYAMQA6AEYAbwByAG4AYQBtAG4APgANAAoAIAAgACAAIAAgACAAIAAgADwAdgAxADoASwBvAG4AIAB4AHMAaQA6AG4AaQBsAD0AIgB0AHIAdQBlACIAPgA8AC8AdgAxADoASwBvAG4APgANAAoAIAAgACAAIAAgACAAIAAgADwAdgAxADoAUABvAHMAdABuAHUAbQBtAGUAcgBGAHIAbwBtACAAeABzAGkAOgBuAGkAbAA9ACIAdAByAHUAZQAiAD4APAAvAHYAMQA6AFAAbwBzAHQAbgB1AG0AbQBlAHIARgByAG8AbQA+AA0ACgAgACAAIAAgACAAIAAgACAAPAB2ADEAOgBQAG8AcwB0AG4AdQBtAG0AZQByAFQAbwBtACAAeABzAGkAOgBuAGkAbAA9ACIAdAByAHUAZQAiAD4APAAvAHYAMQA6AFAAbwBzAHQAbgB1AG0AbQBlAHIAVABvAG0APgANAAoAIAAgACAAIAAgACAAIAAgADwAdgAxADoAUABvAHMAdABvAHIAdAA+ADwALwB2ADEAOgBQAG8AcwB0AG8AcgB0AD4ADQAKACAAIAAgACAAIAAgADwALwB2ADEAOgBTAG8AawB2AGkAbABsAGsAbwByAE4AYQBtAG4APgANAAoAIAAgACAAIAA8AC8AdgAxADoATgBhAG0AbgBzAG8AawBuAGkAbgBnAFIAZQBxAHUAZQBzAHQAPgANAAoAIAAgADwALwBzAG8AYQBwAGUAbgB2ADoAQgBvAGQAeQA+AA0ACgA8AC8AcwBvAGEAcABlAG4AdgA6AEUAbgB2AGUAbABvAHAAZQA+AA==</StringHttpBody>
</Request>
</Items>
<WebTestPlugins>
<WebTestPlugin Classname="LIL_VSTT_Plugins.ServiceManagerWebTestPlugin, LIL_VSTT_Plugins, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null" DisplayName="Service Manager Config" Description="(C) Copyright 2015 LIGHTS IN LINE AB&#xD;&#xA;Sätter config värden i Service Manager instansen för hela testet.">
<RuleParameters>
<RuleParameter Name="exp100" Value="True" />
<RuleParameter Name="maxIdle" Value="100" />
<RuleParameter Name="keepAlive" Value="False" />
<RuleParameter Name="timeOut" Value="5000" />
<RuleParameter Name="interVal" Value="1000" />
<RuleParameter Name="useNagle" Value="False" />
<RuleParameter Name="useTls12" Value="True" />
</RuleParameters>
</WebTestPlugin>
<WebTestPlugin Classname="LIL_VSTT_Plugins.ClientCertificatePlugin, LIL_VSTT_Plugins, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null" DisplayName="Client Certificate" Description="(C) Copyright 2016 LIGHTS IN LINE AB&#xD;&#xA;Sätter webtestet att använda ett specifikt client cert för SSL. Certifikatet behöver inte installeras i certstore först.">
<RuleParameters>
<RuleParameter Name="pCertificatePath" Value="U:\projekt\2015\Folke - flapp\SoapUI\kommunA.p12" />
<RuleParameter Name="pCertificatePathParameter" Value="" />
<RuleParameter Name="pCertificatePassword" Value="3129445131123535" />
<RuleParameter Name="pCertificatePasswordParameter" Value="" />
<RuleParameter Name="pDebug" Value="False" />
<RuleParameter Name="pInstallTrusted" Value="True" />
<RuleParameter Name="pInstallUntrusted" Value="True" />
</RuleParameters>
</WebTestPlugin>
</WebTestPlugins>
</WebTest>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<WebTest Name="WebTest6" Id="122acb09-9cc2-4809-903b-a7fee7f1e5c3" 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="WebTest5.10d2bf93-1ab4-4a60-b4ff-f80b74d5d7e4.rec.webtestresult" ResultsLocale="">
<Items>
<Request Method="GET" Guid="57c5c6f4-6ec7-461e-85f2-5ff56e9a7a5f" Version="1.1" Url="https://ssokpr.rsv.se/" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="False" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
<TransactionTimer Name="Transaction1">
<Items>
<Request Method="GET" Guid="57c5c6f4-6ec7-461e-85f2-5ff56e9a7a5f" Version="1.1" Url="https://ssokpr.rsv.se/" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="False" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
</Items>
</TransactionTimer>
<TransactionTimer Name="Transaction2">
<Items>
<Request Method="GET" Guid="57c5c6f4-6ec7-461e-85f2-5ff56e9a7a5f" Version="1.1" Url="https://ssokpr.rsv.se/" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="False" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
<TransactionTimer Name="Transaction3">
<Items>
<Request Method="GET" Guid="57c5c6f4-6ec7-461e-85f2-5ff56e9a7a5f" Version="1.1" Url="https://ssokpr.rsv.se/" ThinkTime="0" Timeout="300" ParseDependentRequests="True" FollowRedirects="False" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
</Items>
</TransactionTimer>
</Items>
</TransactionTimer>
</Items>
<ValidationRules>
<ValidationRule Classname="Microsoft.VisualStudio.TestTools.WebTesting.Rules.ValidateResponseUrl, Microsoft.VisualStudio.QualityTools.WebTestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" DisplayName="Response URL" Description="Validates that the response URL after redirects are followed is the same as the recorded response URL. QueryString parameters are ignored." Level="Low" ExectuionOrder="BeforeDependents" />
<ValidationRule Classname="Microsoft.VisualStudio.TestTools.WebTesting.Rules.ValidationRuleResponseTimeGoal, Microsoft.VisualStudio.QualityTools.WebTestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" DisplayName="Response Time Goal" Description="Validates that the response time for the request is less than or equal to the response time goal as specified on the request. Response time goals of zero will be ignored." Level="Low" ExectuionOrder="AfterDependents">
<RuleParameters>
<RuleParameter Name="Tolerance" Value="0" />
</RuleParameters>
</ValidationRule>
</ValidationRules>
<WebTestPlugins>
<WebTestPlugin Classname="LIL_VSTT_Plugins.ServiceManagerWebTestPlugin, LIL_VSTT_Plugins, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null" DisplayName="Service Manager Config" Description="(C) Copyright 2015 LIGHTS IN LINE AB&#xD;&#xA;Sätter config värden i Service Manager instansen för hela testet.">
<RuleParameters>
<RuleParameter Name="exp100" Value="False" />
<RuleParameter Name="maxIdle" Value="100" />
<RuleParameter Name="keepAlive" Value="False" />
<RuleParameter Name="timeOut" Value="5000" />
<RuleParameter Name="interVal" Value="1000" />
<RuleParameter Name="useNagle" Value="False" />
<RuleParameter Name="useTls12" Value="True" />
<RuleParameter Name="proxyOverride" Value="True" />
</RuleParameters>
</WebTestPlugin>
<WebTestPlugin Classname="LIL_VSTT_Plugins.SetTestInfoAsHeader, LIL_VSTT_Plugins, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null" DisplayName="Set Test Info As Header" Description="(C) Copyright 2017 LIGHTS IN LINE AB&#xD;&#xA;Adds name information from transactions, pages, tests into a header in requests so that it can be used to group upon in tools like AppDynamics, DynaTrace, etc.">
<RuleParameters>
<RuleParameter Name="HeaderName" Value="X-Sipoz" />
<RuleParameter Name="onTransaction" Value="True" />
<RuleParameter Name="onTest" Value="True" />
</RuleParameters>
</WebTestPlugin>
</WebTestPlugins>
</WebTest>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<WebTest Name="WebTest7 - Copy" Id="da8233d7-4410-4404-b5f9-76bdf9cf36f4" 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="" ResultsLocale="">
<Items>
<Request Method="GET" Guid="3d1817e4-021d-4bfc-b6d7-dfd8ffa7febf" Version="1.1" Url="https://www.lightsinline.se/" ThinkTime="1" Timeout="300" ParseDependentRequests="False" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
</Items>
<WebTestPlugins>
<WebTestPlugin Classname="LIL_VSTT_Plugins.SetRequestThinkTime, LIL_VSTT_Plugins, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null" DisplayName="Set Request Think Time" Description="Changes the thinktime on requests with a set thinktime over 0 to the value of the ThinkTime context parameter">
<RuleParameters>
<RuleParameter Name="DebugMode" Value="True" />
</RuleParameters>
</WebTestPlugin>
</WebTestPlugins>
</WebTest>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<WebTest Name="WebTest7" Id="b81f6de6-5ea8-4211-ac7b-3c0272942501" 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="" ResultsLocale="">
<Items>
<Request Method="GET" Guid="3d1817e4-021d-4bfc-b6d7-dfd8ffa7febf" Version="1.1" Url="https://www.lightsinline.se/" ThinkTime="1" Timeout="300" ParseDependentRequests="False" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False" />
</Items>
<WebTestPlugins>
<WebTestPlugin Classname="LIL_VSTT_Plugins.SetRequestThinkTime, LIL_VSTT_Plugins, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null" DisplayName="Set Request Think Time" Description="Changes the thinktime on requests with a set thinktime over 0 to the value of the ThinkTime context parameter">
<RuleParameters>
<RuleParameter Name="DebugMode" Value="True" />
</RuleParameters>
</WebTestPlugin>
</WebTestPlugins>
</WebTest>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<WebTest Name="WebTest8" Id="bac430ba-6ffc-4989-a29b-d9425412a248" 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="" ResultsLocale="">
<Items>
<Request Method="GET" Guid="98c3ac11-a7d8-4267-ad44-075ad706a99b" Version="1.1" Url="http://www.skatteverket.se/" ThinkTime="1" Timeout="300" ParseDependentRequests="False" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="" IgnoreHttpStatusCode="False">
<ValidationRules>
<ValidationRule Classname="LIL_VSTT_Plugins.ValidateHeader, LIL_VSTT_Plugins, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null" DisplayName="Validera Header" Description="(C) Mårten&#xD;&#xA;Validerar att en header har ett visst värde i svaret." Level="High" ExectuionOrder="BeforeDependents">
<RuleParameters>
<RuleParameter Name="HeaderName" Value="Server" />
<RuleParameter Name="HeaderValue" Value="Apache-Coyote/1.1" />
</RuleParameters>
</ValidationRule>
</ValidationRules>
</Request>
</Items>
</WebTest>
\ No newline at end of file