Benchmark runtime
configuration summary |
Value |
Run-Time Mode |
<%= (TradeConfig.getRunTimeModeNames())[TradeConfig.runTimeMode] %> |
Order-Processing
Mode |
<%= (TradeConfig.getOrderProcessingModeNames())[TradeConfig.orderProcessingMode]%> |
Scenario Workload
Mix |
<%= (TradeConfig.getWorkloadMixNames())[TradeConfig.workloadMix]%> |
Web Interface |
<%= (TradeConfig.getWebInterfaceNames())[TradeConfig.webInterface]%> |
Active Traders /
Trade User population |
<%= runStatsData.getTradeUserCount() %> / <%= TradeConfig.getMAX_USERS() %>
|
Active Stocks /
Trade Stock population |
<%= TradeConfig.getMAX_QUOTES() %> / <%= runStatsData.getTradeStockCount() %> |
Benchmark
scenario verification |
Run Statistic |
Scenario verification test |
Expected Value |
Actual Value |
Pass/Fail |
Active Stocks |
Active stocks should generally equal the db population of
stocks |
<%= runStatsData.getTradeStockCount() %> |
<%= TradeConfig.getMAX_QUOTES() %> |
<%= ( runStatsData.getTradeStockCount() == TradeConfig.getMAX_QUOTES() ) ? "Pass":"Warn" %> |
Active Traders |
Active traders should generally equal the db population of
traders |
<%= runStatsData.getTradeUserCount() %> |
<%= TradeConfig.getMAX_USERS() %> |
<%= ( runStatsData.getTradeUserCount() == TradeConfig.getMAX_USERS() ) ? "Pass":"Warn" %> |
Estimated total requests |
Actual benchmark scenario requests should be within +/- 2%
of the estimated number of requests in the last benchmark run
to pass. |
<%= expectedRequests %> |
see2 |
see2 |
New Users Registered |
<%= registerPercentage * 100 %>% of expected requests (<%= registerPercentage%>
* <%= expectedRequests %> ) |
<%= registerPercentage * expectedRequests %> |
<%= runStatsData.getNewUserCount() %> |
<%= verify(registerPercentage * expectedRequests, (double)runStatsData.getNewUserCount(), verifyPercent) %> |
Logins |
<%= loginPercentage * 100 %>% of expected requests (<%= loginPercentage%>
* <%= expectedRequests %> ) + initial login |
<%= loginPercentage * expectedRequests + runStatsData.getTradeUserCount() %> |
<%= runStatsData.getSumLoginCount() + runStatsData.getTradeUserCount() %> |
<%= verify((double)loginPercentage * expectedRequests, (double)runStatsData.getSumLoginCount(), verifyPercent)%> |
Logouts |
#logouts must be >= #logins-active traders ( <%= runStatsData.getSumLoginCount() %>
- <%= TradeConfig.getMAX_USERS() %> ) |
<%= runStatsData.getSumLoginCount()- TradeConfig.getMAX_USERS() %> |
<%= runStatsData.getSumLogoutCount() %> |
<%= (runStatsData.getSumLogoutCount() >= (runStatsData.getSumLoginCount()- TradeConfig.getMAX_USERS())) ? "Pass" : "Fail4" %>
|
User Holdings |
Trade users own an average of 5 holdings, 5* total Users =
( 5 * <%= runStatsData.getTradeUserCount() %>) |
<%= 5 * runStatsData.getTradeUserCount() %> |
<%= runStatsData.getHoldingCount() %> |
<%= verify( 5 * runStatsData.getTradeUserCount(), runStatsData.getHoldingCount(), verifyPercent ) %> |
Buy Order Count |
<%= buyOrderPercentage * 100 %>% of expected requests (<%= buyOrderPercentage%>
* <%= expectedRequests %> ) + current holdings count |
<%= buyOrderPercentage * expectedRequests + runStatsData.getHoldingCount() %> |
<%= runStatsData.getBuyOrderCount() %> |
<%= verify(buyOrderPercentage * expectedRequests + runStatsData.getHoldingCount() , (double)runStatsData.getBuyOrderCount(), verifyPercent)%> |
Sell Order Count |
<%= sellOrderPercentage * 100 %>% of expected requests (<%= sellOrderPercentage%>
* <%= expectedRequests %> ) |
<%= sellOrderPercentage * expectedRequests %> |
<%= runStatsData.getSellOrderCount() %> |
<%= verify(sellOrderPercentage * expectedRequests, (double)runStatsData.getSellOrderCount(), verifyPercent)%> |
Total Order Count |
<%= orderPercentage * 100 %>% of expected requests (<%= orderPercentage%>
* <%= expectedRequests %> ) + current holdings count |
<%= orderPercentage * expectedRequests + runStatsData.getHoldingCount() %> |
<%= runStatsData.getOrderCount() %> |
<%= verify(orderPercentage * expectedRequests + runStatsData.getHoldingCount(), (double)runStatsData.getOrderCount(), verifyPercent)%> |
Open Orders |
All orders should be completed before reset3 |
0 |
<%= runStatsData.getOpenOrderCount() %> |
<%= (runStatsData.getOpenOrderCount() > 0) ? "Fail4" : "Pass" %> |
Cancelled Orders |
Orders are cancelled if an error is encountered during
order processing. |
0 |
<%= runStatsData.getCancelledOrderCount() %> |
<%= (runStatsData.getCancelledOrderCount() > 0) ? "Fail4" : "Pass" %> |
Orders remaining after reset |
After Trade reset, each user should carry an average of 5
orders in the database. 5* total Users = (5 * <%= runStatsData.getTradeUserCount() %>) |
<%= 5 * runStatsData.getTradeUserCount() %> |
<%= runStatsData.getOrderCount()-runStatsData.getDeletedOrderCount() %> |
<%= verify( 5 * runStatsData.getTradeUserCount(), runStatsData.getOrderCount()-runStatsData.getDeletedOrderCount(), verifyPercent ) %> |