jmeter-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sebb <seb...@gmail.com>
Subject Re: svn commit: r1210001 - in /jmeter/trunk/xdocs: images/screenshots/jdbc-post-processor.png images/screenshots/jdbc-pre-processor.png usermanual/JDBC-Pre-Post-Processor.jmx usermanual/component_reference.xml
Date Sun, 04 Dec 2011 16:34:25 GMT
On 4 December 2011 16:31, Philippe Mouawad <philippe.mouawad@gmail.com> wrote:
> On Sun, Dec 4, 2011 at 4:13 PM, sebb <sebbaz@gmail.com> wrote:
>
>> On 3 December 2011 20:53,  <pmouawad@apache.org> wrote:
>> > Author: pmouawad
>> > Date: Sat Dec  3 20:53:32 2011
>> > New Revision: 1210001
>> >
>> > URL: http://svn.apache.org/viewvc?rev=1210001&view=rev
>> > Log:
>> > Bug 52128 - Add JDBC pre- and post-processor
>> >
>> > Added:
>> >    jmeter/trunk/xdocs/images/screenshots/jdbc-post-processor.png   (with
>> props)
>> >    jmeter/trunk/xdocs/images/screenshots/jdbc-pre-processor.png   (with
>> props)
>> >    jmeter/trunk/xdocs/usermanual/JDBC-Pre-Post-Processor.jmx
>>
>> Should really be in the demos/ subdirectory; please move it there (and
>> change any links)
>>
>> FIxed
>
>> Also needs EOL setting the same as other JMXs, ie LF (not native)
>>
>> How do you do that ? I am on a Mac OSX

I meant the SVN eol-style property.

The JMX files are always created with LF line endings.

>> > Modified:
>> >    jmeter/trunk/xdocs/usermanual/component_reference.xml
>> >
>> > Added: jmeter/trunk/xdocs/images/screenshots/jdbc-post-processor.png
>> > URL:
>> http://svn.apache.org/viewvc/jmeter/trunk/xdocs/images/screenshots/jdbc-post-processor.png?rev=1210001&view=auto
>> >
>> ==============================================================================
>> > Binary file - no diff available.
>> >
>> > Propchange: jmeter/trunk/xdocs/images/screenshots/jdbc-post-processor.png
>> >
>> ------------------------------------------------------------------------------
>> >    svn:mime-type = application/octet-stream
>> >
>> > Added: jmeter/trunk/xdocs/images/screenshots/jdbc-pre-processor.png
>> > URL:
>> http://svn.apache.org/viewvc/jmeter/trunk/xdocs/images/screenshots/jdbc-pre-processor.png?rev=1210001&view=auto
>> >
>> ==============================================================================
>> > Binary file - no diff available.
>> >
>> > Propchange: jmeter/trunk/xdocs/images/screenshots/jdbc-pre-processor.png
>> >
>> ------------------------------------------------------------------------------
>> >    svn:mime-type = application/octet-stream
>> >
>> > Added: jmeter/trunk/xdocs/usermanual/JDBC-Pre-Post-Processor.jmx
>> > URL:
>> http://svn.apache.org/viewvc/jmeter/trunk/xdocs/usermanual/JDBC-Pre-Post-Processor.jmx?rev=1210001&view=auto
>> >
>> ==============================================================================
>> > --- jmeter/trunk/xdocs/usermanual/JDBC-Pre-Post-Processor.jmx (added)
>> > +++ jmeter/trunk/xdocs/usermanual/JDBC-Pre-Post-Processor.jmx Sat Dec  3
>> 20:53:32 2011
>> > @@ -0,0 +1,445 @@
>> > +<?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>
>> >
>> > Modified: jmeter/trunk/xdocs/usermanual/component_reference.xml
>> > URL:
>> http://svn.apache.org/viewvc/jmeter/trunk/xdocs/usermanual/component_reference.xml?rev=1210001&r1=1210000&r2=1210001&view=diff
>> >
>> ==============================================================================
>> > --- jmeter/trunk/xdocs/usermanual/component_reference.xml (original)
>> > +++ jmeter/trunk/xdocs/usermanual/component_reference.xml Sat Dec  3
>> 20:53:32 2011
>> > @@ -4455,9 +4455,21 @@ For details, see <complink name="BSF Pre
>> >  <description>
>> >  <p>
>> >  The JDBC PreProcessor enables you to run some SQL statement just before
>> a sample runs.
>> > -This can be useful if your JDBC Sample changes some data and you want
>> to reset state to what it was before the JDBC sample run.
>> > +This can be useful if your JDBC Sample requires some data to be in
>> DataBase and you cannot compute this in a setup Thread group.
>> > +</p>
>> > +<p>
>> > +See the following Test plan:
>> >  </p>
>> > +<links>
>> > +        <link href="JDBC-Pre-Post-Processor.jmx">Test Plan using
JDBC
>> Pre/Post Processor</link>
>> > +</links>
>> > +<p>
>> > +In the linked test plan,"Create Price Cut-Off" JDBC PreProcessor calls
>> a stored procedure to create a Price Cut-Off in Database,
>> > +this one will be used by "Calculate Price cut off".
>> > +
>> > +<figure width="1346" height="636" image="jdbc-pre-processor.png">Create
>> Price Cut-Off Preprocessor</figure>
>> >
>> > +</p>
>> >  </description>
>> >  </component>
>> >
>> > @@ -4791,13 +4803,17 @@ For details, see the <complink name="BSF
>> >  <description>
>> >  <p>
>> >  The JDBC PostProcessor enables you to run some SQL statement just after
>> a sample has run.
>> > -This can be useful if your JDBC Sample requires some data to be in
>> DataBase and you cannot compute this in a setup Thread group.
>> > +This can be useful if your JDBC Sample changes some data and you want
>> to reset state to what it was before the JDBC sample run.
>> >  </p>
>> >  </description>
>> >  </component>
>> > -
>> > -<a href="#">^</a>
>> > -
>> > +<links>
>> > +        <link href="JDBC-Pre-Post-Processor.jmx">Test Plan using
JDBC
>> Pre/Post Processor</link>
>> > +</links>
>> > +<p>
>> > +In the linked test plan,"JDBC PostProcessor" JDBC PostProcessor calls a
>> stored procedure to delete the Price Cut-Off that was created by
>> PreProcessor from Database.
>> > +<figure width="1343" height="631" image="jdbc-post-processor.png">JDBC
>> PostProcessor</figure>
>> > +</p>
>> >  </section>
>> >
>> >  <section name="&sect-num;.9 Miscellaneous Features"
>> anchor="Miscellaneous_Features">
>> >
>> >
>>
>
>
>
> --
> Cordialement.
> Philippe Mouawad.

Mime
View raw message