blob: de46391056f1a3d7b5d8cea0828970bbeb309a3e [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<jmeterTestPlan version="1.2" properties="2.1">
<hashTree>
<TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Concurrent Valuation Test Plan" enabled="true">
<stringProp name="TestPlan.comments">Execute a series of concurrent valuations</stringProp>
<boolProp name="TestPlan.functional_mode">false</boolProp>
<boolProp name="TestPlan.serialize_threadgroups">true</boolProp>
<elementProp name="TestPlan.user_defined_variables" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
<collectionProp name="Arguments.arguments">
<elementProp name="CalculateFees" elementType="Argument">
<stringProp name="Argument.name">CalculateFees</stringProp>
<stringProp name="Argument.value">1</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="CalculatePerformanceDetails" elementType="Argument">
<stringProp name="Argument.name">CalculatePerformanceDetails</stringProp>
<stringProp name="Argument.value">1</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="DriverURL" elementType="Argument">
<stringProp name="Argument.name">DriverURL</stringProp>
<stringProp name="Argument.value">jdbc:jtds:sqlserver:</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="DatabasePort" elementType="Argument">
<stringProp name="Argument.name">DatabasePort</stringProp>
<stringProp name="Argument.value">1433</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="UseMiddleTierValuationEngine" elementType="Argument">
<stringProp name="Argument.name">UseMiddleTierValuationEngine</stringProp>
<stringProp name="Argument.value">0</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="MiddleTierRequestTimeout" elementType="Argument">
<stringProp name="Argument.name">MiddleTierRequestTimeout</stringProp>
<stringProp name="Argument.value">500000</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="PricePropagationMode" elementType="Argument">
<stringProp name="Argument.name">PricePropagationMode</stringProp>
<stringProp name="Argument.value">2</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
</collectionProp>
</elementProp>
<stringProp name="TestPlan.user_define_classpath"></stringProp>
</TestPlan>
<hashTree>
<Arguments guiclass="ArgumentsPanel" testclass="Arguments" testname="MI PCO config" enabled="true">
<collectionProp name="Arguments.arguments">
<elementProp name="PCOQuality" elementType="Argument">
<stringProp name="Argument.name">PCOQuality</stringProp>
<stringProp name="Argument.value">5</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="ValueDate" elementType="Argument">
<stringProp name="Argument.name">ValueDate</stringProp>
<stringProp name="Argument.value">2011-07-21</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="ReportingDate" elementType="Argument">
<stringProp name="Argument.name">ReportingDate</stringProp>
<stringProp name="Argument.value">2011-07-21 12:30:08.337</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
</collectionProp>
</Arguments>
<hashTree/>
<Arguments guiclass="ArgumentsPanel" testclass="Arguments" testname="MI 440 SSD GAIA Config" enabled="true">
<collectionProp name="Arguments.arguments">
<elementProp name="Database" elementType="Argument">
<stringProp name="Argument.name">Database</stringProp>
<stringProp name="Argument.value">HSPAD_MI_440_SSD</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="DatabaseHost" elementType="Argument">
<stringProp name="Argument.name">DatabaseHost</stringProp>
<stringProp name="Argument.value">GAIA</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="DatabaseUser" elementType="Argument">
<stringProp name="Argument.name">DatabaseUser</stringProp>
<stringProp name="Argument.value">sa</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="DatabasePassword" elementType="Argument">
<stringProp name="Argument.name">DatabasePassword</stringProp>
<stringProp name="Argument.value">sa2008</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
</collectionProp>
</Arguments>
<hashTree/>
<Arguments guiclass="ArgumentsPanel" testclass="Arguments" testname="MI PCO Pfo List" enabled="true">
<collectionProp name="Arguments.arguments">
<elementProp name="Pfo_1" elementType="Argument">
<stringProp name="Argument.name">Pfo_1</stringProp>
<stringProp name="Argument.value">1548</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="Pfo_2" elementType="Argument">
<stringProp name="Argument.name">Pfo_2</stringProp>
<stringProp name="Argument.value">1611</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="Pfo_3" elementType="Argument">
<stringProp name="Argument.name">Pfo_3</stringProp>
<stringProp name="Argument.value">1613</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
</collectionProp>
<stringProp name="TestPlan.comments">CutOff Nr 11249, 2011-07-2 / 2011-07-21 12:30:08.337 / DailyNAV Estimate / Within Price Cut-Off</stringProp>
</Arguments>
<hashTree/>
<JDBCDataSource guiclass="TestBeanGUI" testclass="JDBCDataSource" testname="JDBC Connection Configuration" enabled="true">
<boolProp name="autocommit">false</boolProp>
<stringProp name="checkQuery"></stringProp>
<stringProp name="connectionAge">5000</stringProp>
<stringProp name="dataSource"></stringProp>
<stringProp name="dbUrl">${DriverURL}//${DatabaseHost}:${DatabasePort}/${Database}</stringProp>
<stringProp name="driver">net.sourceforge.jtds.jdbc.Driver</stringProp>
<boolProp name="keepAlive">true</boolProp>
<stringProp name="password">${DatabasePassword}</stringProp>
<stringProp name="poolMax">25</stringProp>
<stringProp name="timeout">10000</stringProp>
<stringProp name="trimInterval">60000</stringProp>
<stringProp name="username">${DatabaseUser}</stringProp>
<stringProp name="transactionIsolation">4096</stringProp>
<stringProp name="TestPlan.comments">Connect to local HSPAD_Demo_CO and set its isolation mode to SNAPSHOT (4096) and disable auto commit.</stringProp>
</JDBCDataSource>
<hashTree/>
<ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="3 Users" enabled="true">
<stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
<elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
<boolProp name="LoopController.continue_forever">false</boolProp>
<stringProp name="LoopController.loops">3</stringProp>
</elementProp>
<stringProp name="ThreadGroup.num_threads">3</stringProp>
<stringProp name="ThreadGroup.ramp_time">0</stringProp>
<longProp name="ThreadGroup.start_time">1316530469000</longProp>
<longProp name="ThreadGroup.end_time">1316530469000</longProp>
<boolProp name="ThreadGroup.scheduler">false</boolProp>
<stringProp name="ThreadGroup.duration"></stringProp>
<stringProp name="ThreadGroup.delay"></stringProp>
</ThreadGroup>
<hashTree>
<ModuleController guiclass="ModuleControllerGui" testclass="ModuleController" testname="PCO Valuation" enabled="true">
<collectionProp name="ModuleController.node_path">
<stringProp name="-1227702913">WorkBench</stringProp>
<stringProp name="1465685679">Concurrent Valuation Test Plan</stringProp>
<stringProp name="1372988285">PCO Valuation</stringProp>
</collectionProp>
</ModuleController>
<hashTree/>
</hashTree>
<SetupThreadGroup guiclass="SetupThreadGroupGui" testclass="SetupThreadGroup" testname="setUp Thread Group" enabled="true">
<stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
<elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
<boolProp name="LoopController.continue_forever">false</boolProp>
<stringProp name="LoopController.loops">1</stringProp>
</elementProp>
<stringProp name="ThreadGroup.num_threads">1</stringProp>
<stringProp name="ThreadGroup.ramp_time">1</stringProp>
<longProp name="ThreadGroup.start_time">1320821253000</longProp>
<longProp name="ThreadGroup.end_time">1320821253000</longProp>
<boolProp name="ThreadGroup.scheduler">false</boolProp>
<stringProp name="ThreadGroup.duration"></stringProp>
<stringProp name="ThreadGroup.delay"></stringProp>
</SetupThreadGroup>
<hashTree>
<TestAction guiclass="TestActionGui" testclass="TestAction" testname="Setup Middle Tier usage" enabled="true">
<intProp name="ActionProcessor.action">1</intProp>
<intProp name="ActionProcessor.target">0</intProp>
<stringProp name="ActionProcessor.duration"></stringProp>
</TestAction>
<hashTree>
<JDBCPreProcessor guiclass="TestBeanGUI" testclass="JDBCPreProcessor" testname="Set UseMiddleTierValuationEngine and Timeout" enabled="true">
<stringProp name="dataSource"></stringProp>
<stringProp name="query">UPDATE T_SettingGlobal SET UseMiddleTierValuationEngine=?, MiddleTierRequestTimeout=?</stringProp>
<stringProp name="queryArguments">${UseMiddleTierValuationEngine}, ${MiddleTierRequestTimeout}</stringProp>
<stringProp name="queryArgumentsTypes">BIT, INTEGER</stringProp>
<stringProp name="queryType">Prepared Update Statement</stringProp>
<stringProp name="resultVariable"></stringProp>
<stringProp name="variableNames"></stringProp>
</JDBCPreProcessor>
<hashTree/>
<JDBCPreProcessor guiclass="TestBeanGUI" testclass="JDBCPreProcessor" testname="Commit" enabled="true">
<stringProp name="dataSource"></stringProp>
<stringProp name="queryType">Commit</stringProp>
<stringProp name="query"></stringProp>
<stringProp name="queryArguments"></stringProp>
<stringProp name="queryArgumentsTypes"></stringProp>
<stringProp name="variableNames"></stringProp>
<stringProp name="resultVariable"></stringProp>
</JDBCPreProcessor>
<hashTree/>
</hashTree>
<TestAction guiclass="TestActionGui" testclass="TestAction" testname="Clear caches" enabled="true">
<intProp name="ActionProcessor.action">1</intProp>
<intProp name="ActionProcessor.target">0</intProp>
<stringProp name="ActionProcessor.duration">0</stringProp>
</TestAction>
<hashTree>
<JDBCPreProcessor guiclass="TestBeanGUI" testclass="JDBCPreProcessor" testname="Clear Buffers" enabled="true">
<stringProp name="dataSource"></stringProp>
<stringProp name="queryType">Update Statement</stringProp>
<stringProp name="query">DBCC DROPCLEANBUFFERS</stringProp>
<stringProp name="queryArguments"></stringProp>
<stringProp name="queryArgumentsTypes"></stringProp>
<stringProp name="variableNames"></stringProp>
<stringProp name="resultVariable"></stringProp>
</JDBCPreProcessor>
<hashTree/>
<JDBCPreProcessor guiclass="TestBeanGUI" testclass="JDBCPreProcessor" testname="Clear Proc Cache" enabled="true">
<stringProp name="dataSource"></stringProp>
<stringProp name="queryType">Update Statement</stringProp>
<stringProp name="query">DBCC FREEPROCCACHE</stringProp>
<stringProp name="queryArguments"></stringProp>
<stringProp name="queryArgumentsTypes"></stringProp>
<stringProp name="variableNames"></stringProp>
<stringProp name="resultVariable"></stringProp>
</JDBCPreProcessor>
<hashTree/>
</hashTree>
</hashTree>
<TestFragmentController guiclass="TestFragmentControllerGui" testclass="TestFragmentController" testname="PCO Valuation" enabled="true"/>
<hashTree>
<TransactionController guiclass="TransactionControllerGui" testclass="TransactionController" testname="Calculate PCO Transaction" enabled="true">
<boolProp name="TransactionController.parent">true</boolProp>
</TransactionController>
<hashTree>
<JDBCSampler guiclass="TestBeanGUI" testclass="JDBCSampler" testname="Begin Tran" enabled="true">
<stringProp name="dataSource"></stringProp>
<stringProp name="queryType">Update Statement</stringProp>
<stringProp name="query">BEGIN TRAN COMMIT TRAN</stringProp>
<stringProp name="queryArguments"></stringProp>
<stringProp name="queryArgumentsTypes"></stringProp>
<stringProp name="variableNames"></stringProp>
<stringProp name="resultVariable"></stringProp>
<boolProp name="collectDiagnostics">false</boolProp>
</JDBCSampler>
<hashTree/>
<JDBCSampler guiclass="TestBeanGUI" testclass="JDBCSampler" testname="Calculate Price cut off" enabled="true">
<stringProp name="dataSource"></stringProp>
<stringProp name="queryType">Callable Statement</stringProp>
<stringProp name="query">PfoVal_Recalculate ?, ?, 1</stringProp>
<stringProp name="queryArguments">${Pfo_1}, ${PfoValInstance}</stringProp>
<stringProp name="queryArgumentsTypes">INTEGER, INTEGER</stringProp>
<stringProp name="variableNames"></stringProp>
<stringProp name="resultVariable"></stringProp>
<boolProp name="collectDiagnostics">true</boolProp>
</JDBCSampler>
<hashTree>
<BSFPreProcessor guiclass="TestBeanGUI" testclass="BSFPreProcessor" testname="Prepare Portfolio List for Price Cut-Off" enabled="true">
<stringProp name="scriptLanguage">groovy</stringProp>
<stringProp name="parameters"></stringProp>
<stringProp name="filename"></stringProp>
<stringProp name="script">import groovy.sql.Sql
import org.apache.jmeter.protocol.jdbc.config.DataSourceElement
try {
// build Pfo List
println(&quot;Building Portfolio List&quot;)
def pfoList = &quot;&lt;PfoList&gt;&quot;
def pfoNr = 1
def pfo = vars.get(&quot;Pfo_&quot; + pfoNr)
while(pfo != null) {
println(&quot;Pfo: $pfo&quot;);
pfoList = pfoList + &quot;&lt;Pfo ID=&apos;$pfo&apos; EmptyValuation=&apos;true&apos; PropagatePrice=&apos;true&apos;/&gt;&quot;
pfoNr++
pfo = vars.get(&quot;Pfo_&quot; + pfoNr)
}
pfoList = pfoList + &quot;&lt;/PfoList&gt;&quot;
vars.put(&quot;PfoListXML&quot;, pfoList)
} catch (Exception e) {
println(e.toString());
}</stringProp>
</BSFPreProcessor>
<hashTree/>
<JDBCPreProcessor guiclass="TestBeanGUI" testclass="JDBCPreProcessor" testname="Create Price Cut-Off" enabled="true">
<stringProp name="dataSource"></stringProp>
<stringProp name="query">CreatePriceCutOff ?, ?, ?, ?, ?, ?, ?, ?</stringProp>
<stringProp name="queryArguments">${__threadNum},${ValueDate},${PCOQuality},${ReportingDate},]NULL[,${PCO},${PfoListXML},${PricePropagationMode}</stringProp>
<stringProp name="queryArgumentsTypes">VARCHAR, DATE, INTEGER,TIMESTAMP,INTEGER,OUT INTEGER,CLOB,INTEGER</stringProp>
<stringProp name="queryType">Callable Statement</stringProp>
<stringProp name="resultVariable"></stringProp>
<stringProp name="variableNames"></stringProp>
</JDBCPreProcessor>
<hashTree/>
<JDBCPreProcessor guiclass="TestBeanGUI" testclass="JDBCPreProcessor" testname="Get Portfolio Valuation Instance from Price Cut-Off" enabled="true">
<stringProp name="dataSource"></stringProp>
<stringProp name="queryType">Prepared Select Statement</stringProp>
<stringProp name="query">select Nr from PfoValInstance where Pfo=? AND PriceCutOff=?</stringProp>
<stringProp name="queryArguments">${Pfo_1},${PCO}</stringProp>
<stringProp name="queryArgumentsTypes">INTEGER,INTEGER</stringProp>
<stringProp name="variableNames">PfoValInstance</stringProp>
<stringProp name="resultVariable"></stringProp>
</JDBCPreProcessor>
<hashTree/>
<JDBCPostProcessor guiclass="TestBeanGUI" testclass="JDBCPostProcessor" testname="JDBC PostProcessor" enabled="true">
<stringProp name="dataSource"></stringProp>
<stringProp name="query">DeletePriceCutOff ?</stringProp>
<stringProp name="queryArguments">${PCO}</stringProp>
<stringProp name="queryArgumentsTypes">INTEGER</stringProp>
<stringProp name="queryType">Callable Statement</stringProp>
<stringProp name="resultVariable"></stringProp>
<stringProp name="variableNames"></stringProp>
</JDBCPostProcessor>
<hashTree/>
</hashTree>
<IfController guiclass="IfControllerPanel" testclass="IfController" testname="If Controller" enabled="true">
<stringProp name="IfController.condition">${JMeterThread.last_sample_ok}</stringProp>
<boolProp name="IfController.evaluateAll">false</boolProp>
</IfController>
<hashTree>
<JDBCSampler guiclass="TestBeanGUI" testclass="JDBCSampler" testname="Commit" enabled="true">
<stringProp name="dataSource"></stringProp>
<stringProp name="queryType">Commit</stringProp>
<stringProp name="query"></stringProp>
<stringProp name="queryArguments"></stringProp>
<stringProp name="queryArgumentsTypes"></stringProp>
<stringProp name="variableNames"></stringProp>
<stringProp name="resultVariable"></stringProp>
<stringProp name="TestPlan.comments">Commit the transaction of the valuation</stringProp>
<boolProp name="collectDiagnostics">false</boolProp>
</JDBCSampler>
<hashTree/>
</hashTree>
<IfController guiclass="IfControllerPanel" testclass="IfController" testname="If Controller" enabled="true">
<stringProp name="IfController.condition">${JMeterThread.last_sample_ok}==false</stringProp>
<boolProp name="IfController.evaluateAll">false</boolProp>
</IfController>
<hashTree>
<JDBCSampler guiclass="TestBeanGUI" testclass="JDBCSampler" testname="Rollback" enabled="true">
<stringProp name="dataSource"></stringProp>
<stringProp name="queryType">Rollback</stringProp>
<stringProp name="query"></stringProp>
<stringProp name="queryArguments"></stringProp>
<stringProp name="queryArgumentsTypes"></stringProp>
<stringProp name="variableNames"></stringProp>
<stringProp name="resultVariable"></stringProp>
<boolProp name="collectDiagnostics">false</boolProp>
</JDBCSampler>
<hashTree/>
</hashTree>
</hashTree>
</hashTree>
<ResultCollector guiclass="SummaryReport" testclass="ResultCollector" testname="Summary Report" enabled="true">
<boolProp name="ResultCollector.error_logging">false</boolProp>
<objProp>
<name>saveConfig</name>
<value class="SampleSaveConfiguration">
<time>true</time>
<latency>false</latency>
<timestamp>true</timestamp>
<success>false</success>
<label>true</label>
<code>false</code>
<message>false</message>
<threadName>true</threadName>
<dataType>false</dataType>
<encoding>false</encoding>
<assertions>false</assertions>
<subresults>false</subresults>
<responseData>false</responseData>
<samplerData>false</samplerData>
<xml>true</xml>
<fieldNames>false</fieldNames>
<responseHeaders>false</responseHeaders>
<requestHeaders>false</requestHeaders>
<responseDataOnError>false</responseDataOnError>
<saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
<assertionsResultsToSave>0</assertionsResultsToSave>
</value>
</objProp>
<stringProp name="filename"></stringProp>
</ResultCollector>
<hashTree/>
<ResultCollector guiclass="ViewResultsFullVisualizer" testclass="ResultCollector" testname="View Results Tree" enabled="true">
<boolProp name="ResultCollector.error_logging">false</boolProp>
<objProp>
<name>saveConfig</name>
<value class="SampleSaveConfiguration">
<time>true</time>
<latency>true</latency>
<timestamp>true</timestamp>
<success>true</success>
<label>true</label>
<code>true</code>
<message>true</message>
<threadName>true</threadName>
<dataType>true</dataType>
<encoding>false</encoding>
<assertions>true</assertions>
<subresults>true</subresults>
<responseData>false</responseData>
<samplerData>false</samplerData>
<xml>true</xml>
<fieldNames>false</fieldNames>
<responseHeaders>false</responseHeaders>
<requestHeaders>false</requestHeaders>
<responseDataOnError>false</responseDataOnError>
<saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
<assertionsResultsToSave>0</assertionsResultsToSave>
<bytes>true</bytes>
</value>
</objProp>
<stringProp name="filename"></stringProp>
</ResultCollector>
<hashTree/>
<ResultCollector guiclass="TableVisualizer" testclass="ResultCollector" testname="View Results in Table" enabled="true">
<boolProp name="ResultCollector.error_logging">false</boolProp>
<objProp>
<name>saveConfig</name>
<value class="SampleSaveConfiguration">
<time>true</time>
<latency>true</latency>
<timestamp>true</timestamp>
<success>true</success>
<label>true</label>
<code>true</code>
<message>true</message>
<threadName>true</threadName>
<dataType>true</dataType>
<encoding>false</encoding>
<assertions>true</assertions>
<subresults>true</subresults>
<responseData>false</responseData>
<samplerData>false</samplerData>
<xml>true</xml>
<fieldNames>false</fieldNames>
<responseHeaders>false</responseHeaders>
<requestHeaders>false</requestHeaders>
<responseDataOnError>false</responseDataOnError>
<saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage>
<assertionsResultsToSave>0</assertionsResultsToSave>
<bytes>true</bytes>
</value>
</objProp>
<stringProp name="filename"></stringProp>
</ResultCollector>
<hashTree/>
</hashTree>
</hashTree>
</jmeterTestPlan>