|
| How can I purchase licenses for JBlitz ? What sort of support and upgrade options do you offer ? |
|
|
Visit our Software Store to
purchase a license for JBlitz. Regular licenses, multi-installation licenses and site licenses can all
be purchased online. The full version of JBlitz will be made available to
you by internet download.
All license types allow you, for each installation, to run up to 500 virtual users per test case and up to 500 test cases.
Note, however, that the practicable number of virtual users you can test with will be influenced by the configuration
of your test machine, its CPU speed and the amount of memory available to
JBlitz, amongst other things.
Support is email based and covers 180 days from the date of purchase (regular or multi-installation licenses) or 365 days (site licenses).
We are, of course, also very happy to help out informally with enquiries and problems at times before and after this period. Just drop us a line.
Minor upgrades (say from 5.0 to 5.1) for JBlitz are available free of charge to all license holders. A minor
upgrade is a change in the minor version number.
Major upgrades (say from 5.0 to 6.0) for JBlitz are available free of charge to site license holders, but not
to regular license holders. The latter can normally purchase
major upgrades at a discounted price, but this is not guaranteed and the availability depends on the
circumstances at the time.
For any sales enquiries or questions, please email one of our sales team
and we'll be happy to help.
|
|
| Is JBlitz 5.x backward compatible with JBlitz 4.x ? What should I watch out for if I upgrade ? |
|
|
Yes, generally speaking, JBlitz 5.1 will run test configurations used
by the previous JBlitz 5.0 and 4.x versions. There are some things to watch out
for, however, principally the changes made to the dynamic substitutions
that may be embedded within your test URLs. Take a look at our compatibility
page for more detailed information. The version
history will also provide background information on what has changed
from JBlitz 4.2 to JBlitz 5.0 / 5.1.
|
|
| Do you give out the source code ? |
|
|
We are not currently licensing any of the source code. We may change our position on this in the future. Contact us if you are interested.
|
|
| What are the limitations of the evaluation version of JBlitz ? |
|
|
The free trial version of JBlitz is functionally identical to
the retail version except for the following noted areas:
- It expires after 30 days from the date of first use.
- It is limited to 3 test cases with a maximum of 20 virtual users each.
- The maximum run time is 10 minutes. The evaluation version of JBlitz will load test for 10 minutes and no more.
- The minimum pause time between requests is limited to 2000ms. This is at
neutral throttle. This pause time can be reduced from 2000ms to 1000ms
(but no lower) at higher throttles.
- The test scheduler can only schedule a single test
configuration. Multiple configurations can be run back to back in the
retail version.
- The evaluation version is not supported. Feedback and comments are welcome, but no bug fixes, patches or any other type of support is provided.
|
|
| Why does the pause time between requests not reduce to zero when I run at full throttle (+100)
using the evaluation version of JBlitz ? |
|
|
At neutral throttle, the minimum pause time for the evaluation version
of JBlitz is 2000ms. When the throttle is increased, the pause time
reduces, but the evaluation version still enforces an absolute minimum of
1000ms. The retail version of JBlitz has no such limitations.
If the absolute minimum of 1000ms is met, the value that would
otherwise be used in the retail version is shown in parentheses underneath
the arrow icons.
|
|
| What types of testing can JBlitz perform ? |
|
|
JBlitz can help you carry out the following types of testing:
|
Stress testing |
|
checking for robustness and integrity under continuous heavy load |
|
Performance testing |
|
monitoring how the number of users affects responsiveness and throughput |
|
Functional testing |
|
validating functional areas within your website or web application |
|
Resource usage testing |
|
examining any changes to resource usage on the server with time or increased loading. For instance, the server may use more and more
memory over time without freeing it up properly |
|
Endurance testing |
|
testing the correct functioning and maintained performance over a prolonged period of continuous loading |
|
Overload testing |
|
seeing how many simultaneous users your website or web application can handle before either it falls over or
it performs so slowly as to become unusable |
|
Quality assurance testing |
|
assessing any changes in behavior of your website or web application after software or hardware changes |
If you're designing, writing or testing a dynamic website
or web enabled application, then JBlitz should be of serious interest to you.
These applications often include complex technologies such as ASP, JSP, servlets, EJBs, Perl
and CGI scripts. All of these technologies need to be carefully tested when your site / app is under load or
continuous use. These technologies are often sensitive to loading and they may not scale,
They are often complex to code and easy to introduce bugs into. They often share objects, resources or functions which
need to be safeguarded against concurrent access (a good example is a
database connection pool). And these technologies are
most often used on sites where problems, bugs and defects can be expensive and
embarrassing (i.e. e-commerce websites).
|
|
| What software can JBlitz test ? |
|
|
JBlitz is ideal for testing anything that is web enabled:
- Websites
- Web enabled applications
- Server side software components accessible via a web front end
- Web services
The rule is that if you are writing a website, or if your application has a web front end
(i.e. it is web enabled), then you can test it with JBlitz.
JBlitz works with URLs just like a browser, so if you can exercise your software via a web browser, then chances are you can stress and performance test it with JBlitz.
JBlitz issues requests using the HTTP/1.0 protocol with either the GET
or POST request method.
|
|
| What is the mechanism by which JBlitz captures test configurations ? |
|
|
Unlike more expensive tools that record and playback web conversations, we have opted for
a simpler approach to capturing test configurations. This approach
is based on the assumption that the developer or test engineer knows which key resources
and scenarios are the most appropriate to test. Thus, JBlitz allows the engineer to input
precisely the resources and parameters to be used at each point in the test. This approach also avoids the
need to learn proprietary and complicated scripting languages
that other tools often demand.
Of course, realistic testing involves taking the specified test
URLs and varying the parameters passed to the web server
with each request. JBlitz does this via 'dynamic substitutions'. These are specified as '%'
substitution elements embedded in the URLs. JBlitz substitutes values for these elements
at test time according to well specified rules. For example, %j is used to specify a randomly
generated integer between 0 and 9 inclusive, whilst the elements %x00 to %x99 are used to substitute
the contents of a given document into the request line. Substitutions are applied recursively making
this feature very powerful and very flexible. For example, you could embed random user names or user ids
within XML documents substituted into the request line. Further to
this, you could have JBlitz substitute the document randomly from a set of valid 'test' documents.
More information about this is given in the section Defining your test configurations in the product
overview.
|
|
| Can JBlitz handle POST requests. How do I specify the POST (form) data ? |
|
|
Yes, in fact, JBlitz handles not only GET and POST requests, but
all the common request methods are catered for.
If you specify the POST request method, you can either:
- use the web page editor to specify name value pairs that make up
the form data. See the help for more information about using the web page editor.
- type it in manually after a question mark at the end of the URL (as
if it were a query string). JBlitz knows to repackage the data after
the question mark to make the POST data for the request.
- write your POST data into a file and use a %x file content
substitution. JBlitz will POST the contents of the file. Use a
URL like /mypage?%x00 and JBlitz will POST the contents of
the document pointed to by the %x00 dynamic substitution to the page /mypage.
See the help for more information on %x file content substitutions
|
|
| How can I test a SOAP request using JBlitz ? |
|
|
A typical SOAP request comprises an XML message following on from
the normal HTTP headers that exist for any HTTP GET or POST request.
For example,
POST /StockQuote HTTP/1.0
Host: www.stockquoteserver.com
Content-Type:text/xml
SOAPMethodName: Some-Namespace-URI#GetLastTradePrice
Content-Length:xxxx
<SOAP:Envelope xmlns:SOAP="urn:schemas-xmlsoap-org:soap.v1">
<SOAP:Body>
<m:GetLastTradePrice xmlns:m="Some-Namespace-URI">
<symbol>DIS</symbol>
</m:GetLastTradePrice>
</SOAP:Body>
</SOAP:Envelope>
|
The request body is made up of the actual SOAP message to transmit. This is basically a HTTP POST request
where the SOAP message is the data to POST. A good way to achieve this with JBlitz is to define a %x dynamic substitution that
contains the SOAP request body. This simply involves writing the SOAP markup into an
XML file and then defining one of the
%x dynamic substitutions (in this example %x00) to point to that
XML file. Once this is done, a URL similar to the following may be used:
/StockQuote?%x00
Note: in JBlitz, POST data is entered by simply typing it into the URL after a question mark,
just as if it were a query string - JBlitz knows that you have marked the request as a POST and repackages any data following the
question mark into POST data; see specifying HTTP POST requests for more
information.
|
|
| Our web application accepts a variety of XML format requests. Can JBlitz test all of the request types ? |
|
|
Yes. Define your XML data in separate files. Then embed the
'%x00' to '%x99' dynamic substitutions in your web page request
URLs. For example, consider the following web page request
/bookCatalog.jsp?request=%x00
|
Define the dynamic substitution (under the 'Dynamic Substitutions' tab) %x00 to point to
one of the XML test files. JBlitz will then substitute the XML data into the request URL when it runs.
You can get JBlitz to URL encode the XML data as required.
Here are some more ideas you can use to refine your test further:
- Recursively apply substitutions. Within your XML test
files, you can embed further dynamic substitutions (e.g. use
'%j' to generate a number between 0 and 9 inclusive). There are
no restrictions on this technique. Have the XML files include
other XML files etc). Properly thought through, this can greatly
enhance your testing capabilities.
- Use the item substitutions '%y00' to '%y99' to define a
selection to be made when JBlitz runs. Use this in conjunction
with the XML test files to get JBlitz to choose a random XML
test file from a suite. To do this, you'd need to change the
request URL to something like '/bookCatalog.jsp?request=%y00'
and then define the substitution '%y00' to point to a list of
entries defined as '%x00', '%x01', '%x02' that define the actual
XML data to send.
When using substitution elements within external files that make up document
substitutions, make sure the substitution element does not act recursively or
set up closed cycles of substitutions. For example, if the substitution element
%x00 references your document 'invoice.xml', make sure that 'invoice.xml' does
not itself contain the element '%x00' either directly or indirectly. If it does,
you'll need to untick the box 'Do not encode embedded substitutions' so that
JBlitz URL encodes the inner reference and does not follow it..
|
|
| Is there any way to see the actual HTTP requests being made by JBlitz ? |
|
|
There are several ways to do this. Firstly, under the 'Logs' tab on the
main screen, you can enable logging of each request message under the
'Message Logging' sub-tab. This will record each HTTP request issued to a
log file of your choice.
Secondly, you can use the inbuilt debugger to inspect every request
message as it is issued, and even to make changes on the fly. Click on the
'Debug' button in the right hand gutter of the main screen. Hit the 'Step
Debug' toolbar button to step into the first web page download for the
selected test case. You will be able to see each stage of the download
process as it occurs and make changes along the way. More information is
given in the debugger section of the
help file
Lastly, you can use the command line option '-debug http'. This will print
the actual HTTP requests being made by JBlitz to the standard output
device. Be careful using this option when you have configured more
than just a few virtual users as the debug output will become difficult to
interpret and will also hinder performance. However, this command
line option is ideal when you need to track down unexpected or
incorrect responses from your website or web application to any
given request.
See the help on command line parameters for more information.
|
|
| How can we schedule our nightly tests with JBlitz ? |
|
|
Yes. JBlitz can be configured to run nightly tests using the test
runner / scheduler. Launch JBlitz in the normal way and click on the
scheduling icon (clock icon) on the toolbar. Create a new test schedule
specifying one or more test configurations to be run and a time to run the
tests at. JBlitz will show a timer icon in the top right corner of the
screen. Leave JBlitz opened (you can minimize it if you like) and it will
run your test(s) at the configured time. Come back later and the
results will be presented in the scheduler window. Double click on any
given line in the results table to review the test outcomes within JBlitz.
|
|
| Can we have JBlitz run our tests silently and without any GUI (from a command
prompt)? |
|
|
Yes. You can use the command line parameter
-console to run JBlitz 'in the background' without any GUI When you use this parameter, you need to have setup your test configuration
already so that the tests can be run without any user intervention. By default, JBlitz will run the last configuration that was being used when
it is run with the -console command line parameter. You can also specify which test configuration to use by specifying the test
configuration on the command line too. The console mode support has been
beefed up in version 5.1 so that JBlitz will run in a Java 'headless'
environment without any issues.
|
|
|
How can we verify the response pages received at each point in our test case ? We'd like to check each page for
accuracy and verify that certain pieces of our test data are correctly shown in the response page
|
|
|
There are two principal ways that you can configure JBlitz to automatically perform the required checks on any given downloaded page.
- Text searching of each response to ensure the expected data exists. In JBlitz, text searching is
configurable at the page level. Bring up the test case settings dialog,
select a web page and click on the 'Page Settings' button at the
bottom right. Select the 'Errors' tab and click the 'Set' button. Text searching comprises three different types:
- Plain Text Searches: simple searches for given error or success text within the returned page or its headers.
- Regular Expression Pattern Finds: evaluation of a Perl-like regular expression against the returned page or its headers. The expression
can match on any part of the data.
- Regular Expression Pattern Matches: entire matching of a Perl-like regular expression to the returned page or its headers. The expression
must match the whole data in its entirety.
- Response checking using your own Java code. A simple means of extending JBlitz to allow your own code to determine whether any
given response page or its headers is 'accurate'. The response checker API is a single static method that can be implemented by any Java
class and that can be configured for one or more web pages that comprise your test case. Response checkers can check the returned data against
the input URL for accuracy of content. They can also check in a more complex way by maintaining state across web page downloads so that the whole
'download path' is checked. They can be as simple or complex as you require and perform the sort of bespoke error checking that only your own
custom code can achieve. See the customization help for more information.
Additionally, custom response checking can be performed by a customization module.
These modules can register
a new or modified query extension with JBlitz that has the ability, amongst other things, to
verify any given web page download.
|
|
| How do we maintain server side session state with JBlitz ?
|
|
|
By default, JBlitz will receive and transfer all the necessary
cookies that are required to maintain server side state. Typically, this
is done using an ASP or JSP session ID cookie that is sent back by the
server and which is then re-sent to the server by JBlitz with each
subsequent request.
The global settings for controlling state behavior are on the 'State
Maintenance' tab on the main screen. Here, you can enable or disable state maintenance
via cookies. By default, cookie based state maintenance is enabled.
If the server also sends back the ASP / JSP session ID encoded into
URLs within the returned pages, you'll also need to enable the 'Response
parsing' check-box and additionally configure how the session ID path
parameter is transferred from one page to the next. See the help for more
info.
|
|
| How does JBlitz store the configuration for each test setup ? Can we copy and edit this information ? |
|
|
From version 3.0 on, JBlitz incorporates XML based test
configuration files which contain all your test settings. Each file is
a self contained and user-editable definition of a test environment. You can
edit / email and otherwise freely alter the settings within. The only proviso
is that the file remains a valid XML document as it has to be parsed before it
can be used by JBlitz. Read the help for more.
|
|
| We have a page which does a database search based on a name parameter. Can we test this with JBlitz ? |
|
|
Yes. JBlitz could be used to effectively test that page. For example,
if your page was called 'dblookup.jsp' and accepted a parameter with the name 'search_term',
then you might specify the web page in JBlitz like this:
/dblookup.jsp?search_term=%s
Here, the '%s' in the name-value value is dynamically substituted with a random string
on each request of that page. The substitution is described here.
As an additional example, say you had another parameter called 'category' which used values
such as 'cat0', 'cat1' etc to specify the search category. You could test this page by
specifying something like this:
/dblookup.jsp?search_term=%s&category=cat%j
Here the search term is randomly generated and the category is randomly switched between 'cat0',
'cat1' etc (%j chooses a number between 0 and 9 inclusive).
More information on how to dynamically alter you query string is given here.
|
|
| Does JBlitz handle SSL ? |
|
|
Yes, there is full support for SSL via the Java JSSE API which support
SSL 3.0 and TLS 1.0. Configure any individual web page to use SSL by
ticking the 'Secure (https)' check-box in the settings dialog for the
relevant test case.
|
|
| How do we configure JBlitz to use our private / test SSL certificate ? |
|
|
Yes. However, you will need to configure the JVM to do this. By default, the
JVM that JBlitz runs in does not 'trust' private / self generated / test
certificates. This is a normal safeguard against accepting content from
un-trusted websites etc.
Configuring your client VM to accept the returned certificate is outlined
in more detail below under the known bugs section.
|
|
| Can we configure JBlitz to use
sub-domains on some pages ? |
|
|
Yes. In JBlitz, page level overriding of either the host, port or
request headers is possible from version 5.1 onwards.
Double click on a web page icon on the main screen to bring up the test
case settings dialog. Double click on the web page of interest and select
the 'Request Properties' tab and specify the alternate host with sub-domain
below.
|
|
| Can JBlitz transfer session IDs encoded within our URLs ? |
|
|
Yes. In addition to maintaining server side state using cookies. From 5.1
on, JBlitz can transfer ASP and JSP session IDs returned as path
parameters within URLs. To do this, you'll need to configure the navigation
settings for the web page and specify a 'Name-value transfer' navigation
mode. Further information is provided
in the help.
|
|
| Does JBlitz support NTLM authentication ? |
|
|
No. Currently there is no support for Microsoft's NTLM protocol.
|
|
| How do we configure JBlitz to use our proxy server ? |
|
|
Select the 'Proxy Server Settings' menu item from the main 'Options' menu.
In the dialog, click to enable the proxy server and type in the http and ssl
proxy addresses and ports. Addresses can either be domain names or IP
addresses.
If authenticating against the proxy, click on the 'Authorization' button
and enter your user name / password information in the form.
|
|
| Can JBlitz handle form based authentication
? |
|
|
Yes. J2EE form based authentication is just a standardized username /
password login form that is used to authenticate the client.
To include form based authentication into your test case, the easiest
method is to add an initial 'login' page that represents the login form.
This page must send over the username and password using standard naming
conventions. The form action must be j_security_check. A typical URL for
your form based authentication login page might be:
j_security_check?j_username=myusername&j_password=mypassword
where myusername and mypassword should be substituted with the username /
password for login. Make sure the request method is POST.
Note, unless all connections are over SSL, all data is sent over as clear
text. If SSL is used to encrypt the login information, select the 'Secure
(https)' option in the page settings dialog.
You'll probably need to ensure that the login page occurs as the first
page of your test case as, presumably, other requests will only result in a
redirection to the login page if the user is not first logged in (handling
login after redirection to a login page is more difficult and would require
a response checker check each response and perform a login cycle if
required).
More information about form based authentication in J2EE containers is
provided here.
|
|
| How can we effectively measure response versus load ? |
|
|
From version 5.1 on, JBlitz includes a speed 'throttle' that allows you
to vary the load placed on the server as your test run proceeds
The throttle works to increase or decrease the 'pause time' between each
web page download. Hence, varying the throttle as your test run proceeds
allows you to control the rate at which requests are made to the server.
The throttle can be varied manually or programmatically. See the throttle
help for more information on how to operate the throttle.
The throttle can be shown when viewing graphs of hit rate / download rate
etc. This allows you to easily ascertain how you website / web application
is responding to changes in the server load.
|
|
| What reporting capabilities does JBlitz have ? |
|
|
JBlitz does not have any inbuilt functionality to generate formatted reports
per-se. However, all the relevant statistical and result related information
is readily available for export as simple text based data. This allows you
to import the data into a reporting tool or Excel etc to format a report to
your own liking.
Information is made available by JBlitz in the following ways:
- The Statistics Manager allows you to export combined statistical
information that summarizes the statistics collected for any given test
run.
- The Graph windows allow you to export the displayed graph data. The
graph data is controlled via a 'Legend' that allows you to pick and
choose the test cases to view. You can also optionally
include the throttle value in the exported data.
- The Graph window also allows you to export the data displayed in its
own 'Legend' table via the right mouse button.
- Every table (e.g. Error Inspector and Response Recorder) has a right
mouse option to export the data shown within the table. Either data for
the selected rows or all rows combined can be exported.
|
|
| When you say JBlitz is a Java application, what difference does that make ? |
|
|
In most instances, this fact is transparent to you. JBlitz behaves like a regular desktop application.
In fact, being a Java application actually gives you an extra level of
protection - everything JBlitz does is validated by the Java virtual
machine at execution time.
On Windows, JBlitz comes with full install / uninstall support. A
shortcut can be created during installation that will run JBlitz from your
desktop or quick launch bar. An executable 'JBlitz Pro.exe' is created in your
installation folder that will also run JBlitz. On Unix and Linux, the JBlitz
distributions come in either ZIP or TAR GZIP formats. These distributions contain the JBlitz JAR
file and associated documentation. You'll need a 1.4 or higher Java
virtual machine installed to run JBlitz. More information on how to
install and run JBlitz for these platforms is given in the installation
instructions. Java gives JBlitz it's cross platform capabilities.
The JBlitz JAR file containing the code is binary identical across all
Java platforms and should run similarly on any platform that supports
Java.
|
|
| Can we change the Java Look And Feel that is used by JBlitz ? |
|
|
Yes, if you *really* want to. We do, however, recommend that you work with the system default look and feel
that JBlitz uses as this is the one that looks best for each platform and the one that has been tested against the most.
To change the look and feel, you'll need to pass in a system property to JBlitz. This is most easily done by altering the
command line to include the look and feel class name you want to use. For instance the parameter:
-Dswing.defaultlaf=javax.swing.plaf.metal.MetalLookAndFeel
loads up the Metal look and feel. How you pass this parameter into JBlitz depends on whether you downloaded and ran
the Windows installation program or are running the jblitz.jar file directly. In the former scenario, you need to
edit the file JBlitz Pro.ini in the installation folder and add the parameter to the end of the line
starting Virtual Machine Parameters. In the latter scenario, specify
it on the command line after the 'java' part and alongside any memory options you may be specifying.
Other look and feel classes are held under the javax.swing.plaf package. Their availability
depends on the platform you are running on. If you try to use a
non-existent class, a load failure will occur when starting JBlitz.
|
|
| Sometimes it appears that our test machine cannot maintain enough connections to the server.
We receive error messages such as 'The connection could not be established - Address already in use: connect'. Is there anything we can do to alleviate this ? |
|
|
A common issue with many variants of the Windows operating system is that there are strict limits applied to the number of concurrent network
connections allowed on any given machine. With Windows XP Professional,
for instance, the limit is 10. There are, however, some remedial steps
that can be taken to alleviate this problem. A full description of the
issue and possible courses of action are outlined in the bug
report below.
|
|
| What system specification recommendations do you offer ? |
|
|
The specification of the client (testing) machine will depend highly on the level of load testing that is required.
For normal testing of 10 to 15 pages by, say, 50 virtual users, a modest system with a
800MHZ CPU and maybe 256MB memory will suffice. For heavier loading than that, a higher spec system will ensure that your testing does not
become constrained by the limitations of the testing machine itself.
Of course, a more thorough level of testing can often be achieved by purchasing
a multiple installation license
or a site license and running your test
systems on more than one machine in parallel.
|
|
| How can we minimize the amount of memory that JBlitz needs at runtime ? |
|
|
By default, if you downloaded and ran the Windows installation program, JBlitz will be configured to use up to 192 MB of memory.
You can alter this amount by editing the file JBlitz Pro.ini in the installation folder and altering the line starting
Virtual Machine Parameters (the part where it specifies -Xmx192m).
If you are working with jblitz.jar directly and running it from a command line or shell, then you may specify the memory usage
using the VM parameters -Xmx and -Xmm to say (in MB) the maximum and minimum amount of memory to use.
Generally, JBlitz requires at least 64 MB of memory for normal use. JBlitz will need more memory if your are using a large
number
of virtual users, using very long URLs or if your website is returning very long response pages or headers.
Here are some tips that may help reduce the overall memory consumption when running JBlitz:
- Disable the Log Console. (main menu Tools -> Log Console...).
- In your logging settings ('Logs' tab), choose file based logging
instead of in-memory logging. Disable logging entirely if you don't
think you'll need it.
- In the Preferences dialog (main menu Options -> Preferences...),
choose a lower number for the recording capacity of the Response
Recorder and Error Inspector ('Recording and Logging' tab). This will
minimize the number of records maintained in memory while your tests are
running.
- Under the 'Dynamic Substitutions' tab disable the use of '%p' dynamic
substitutions (assuming that you do not require them). Select the entry
'%p1 ... %p9' in the left hand list and then ensure the check-box
'Enable use of %p substitutions' is unticked. This will save some memory
that would otherwise be required to track the substitution history for
each virtual user.
- Generally having as few extraneous windows open as possible will minimize the memory overhead. Use the main menu
option Window->Close All Windows to close all ancillary windows.
- Try running JBlitz in console mode. This usually requires a lot less memory than
the normal GUI mode. See the help file for usage of the '-console'
command line parameter.
|
|
| Can we use a JVM different from Sun's JVM
1.6, 1.5 or 1.4 ? |
|
|
JBlitz 5.x has been developed and tested against the 1.4.2, 1.5.0 and
1.6.0
JVMs from Sun Microsystems. JBlitz requires the use of at least a 1.4 compatible JVM.
This is because it uses many of the advanced APIs and features offered by the 1.4 JVM.
The use of another vendor's JVM is not necessarily precluded so long as it supports
at least the same APIs and features as Sun's 1.4.2 JVM.
|
|
| Known bugs for JBlitz Professional 5.1
|
|
| Please review the list of current known bugs below. If you find or suspect a bug, please don't hesitate to contact us to report it.
Finding significant bugs increases the quality of our code and helps our QA process.
By reporting a significant bug, you may qualify
for a purchase discount. Contact support@clanproductions.com with a summary of the bug and a description of your test environment.
|
|
|
| Bug |
Description |
|
| Connection errors can occur under heavy
loading or connections can appear to 'run out'.
Error messages similar to 'The connection could not be established' - Address already in use: connect
can occur
|
There are several factors at work here.
For starters, not all operating system platforms support an unlimited number
of concurrent network connections. Some versions of Windows have a limit
of 10 concurrent connections. This can affect how many virtual users can be
used in a test configuration. Whilst such limitations are inherent in
these versions of Windows, you may be able to alleviate some of the
problems by tweaking the configuration of the test machine.
We recommend you consult the following articles: Microsoft Knowledge Base Article - 120642
and Microsoft Knowledge Base Article - 314053.
These articles explain how some of the TCP/IP configuration parameters may
be modified. You can use regedit to make modifications to the
TCP/IP configuration of the test machine as outlined below (any changes
made will require a reboot before they take effect):
Key: \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
| Name | Type | Value |
| MaxFreeTcbs | REG_DWORD | 25000 |
| TcpTimedWaitDelay | REG_DWORD | 30 |
| MaxUserPorts (NT, 2000 only) | REG_DWORD | 65534 |
A further possible cause of problems is the inclusion of the request header Connection: Keep-Alive. This
can, depending on the web server, result in connections 'running out'. JBlitz does not attempt to keep the connection to the server open between
successive web page requests, so this header should either be omitted (as with the default headers) or replaced with a Connection: Close
header instead.
Finally, the overall behavior can be affected by the web server used and its settings. Check your server's settings and, if you can, try a different
server to see if some of the issues are specific to the server being used.
|
|
| Error message 'unable to find valid certificate path' is received when using a https request with a self-signed or test certificate |
This error usually means that your server is using a test
certificate (possibly generated using keytool) rather than a certificate
from a well known commercial Certification Authority such as Verisign or
GoDaddy. Web browsers display warning dialogs in this case, but since JSSE
cannot assume an interactive user is present it just throws an exception
by default.
The fix is to add your server's certificate to the keystore on the client
machine running JBlitz. This keystore already has all your trusted
certificates and adding your test certificate means that JBlitz will be
able to 'trust' your server too.
A command similar to the following will add a certificate to the given
keystore:
keytool.exe -import -trustcacerts -keystore "<mykeystore>"
-storepass <mypassword> -noprompt -alias <mycertname> -file
<mycertfile>
where <mykeystore>, <mypassword>, < mycertname> and
<mycertfile> should specify your keystore file, password,
certificate alias and certificate file respectively.
The following command line parameter can be used to make JBlitz use a
given keystore:
-Djavax.net.ssl.trustStore="<mykeystore>"
Specify this parameter straight after after 'java.exe' part of your
command line.
This link contains useful extra information. There is also a
program that will help you add a certificate to a keystore.
|
|
| Occasional access violation in the (obsolete) Sun 1.3 JVM |
We have seen an occasional access violation in this (old) version of the Sun VM when under very heavy loading.
This VM is no longer used - you should use version 1.4, 1.5 or 1.6 of the Sun virtual machine.
However, the prior fix for this problem under the old VM has now been adopted as a general memory setting recommendation for
running JBlitz. For optimum stability and speed, please specify the following VM flags when
running JBlitz from a command prompt or shell:
-XX:NewSize=32m -XX:MaxNewSize=32m -Xmx192m -XX:SurvivorRatio=2
Note that if you installed JBlitz using the Windows installation program (jblitz_pro_install.exe) then these
flags will be setup automatically - you need take no action.
|
|
|
|
|
| Copyright © 2001-2007 Clan Productions Limited |
|