Frequently asked Questions

Got a question about Emblasoft?
The answer might be here!

Frequently Asked Questions

Learn more about our solutions

Find answers to some of the most commonly asked questions about our solutions, from general information on licensing to more technical responses to installation, test case design and execution questions.

  • Pureload
    • 1.0 - Purchasing and Licensing

      1.01 Is License renewal required?

      If you want to use the latest version of PureLoad and “Expire” date has past (check Help->License Key for details) you need a new license file.

      Please contact sales@pureload.com for more information.

      1.02 License Agreement

      All parts of the terms of use are listed in the license agreement available here.

      1.03 Are PureTest or PureLoad delivered on CD?

      Both PureTest and PureLoad are available as a download only.
      Please go to page www.pureload.com/download to get the latest versions of our software.

      1.04 Are there any shipping costs?

      There are no shipping costs or other hidden costs.

      1.05 Is tax VAT included in pricing?

      All prices listed are subject to the applicable sales tax/VAT, if any. The applicable taxes depend on the customer´s country of residence.

      1.06 What is a “License Certificate”?

      The software license certificate is sent by email to the address provided by you within 48 hours after payment has been received (normally much faster). The license certificate email includes information about your licensing terms and the license key file(s). If ordering a single license then the license key file will be attached to the license certificate email as pureload.license.

      1.07 I have not received my license, what should I do?

      If you haven´t received your license file, please contact support@pureload.com.

      1.08 Who are Cleverbridge and how do I contact them?

      PureTest and PureLoad online sales are processed by our partner cleverbridge. All major credit cards are accepted as well as payment via bank transfer, check or in cash. The ordering phase is processed via encryption and safe secure transmission of all data you enter. For inquiries regarding orders registered with cleverbridge, please check the cleverbridge contact information web page.

      1.09 What are the evaluation license restrictions?

      An evaluation license is designed for a 10-day trial of the software. You can only use the software for testing purposes during your trial.

    • 2.0 - General

      2.01 How many virtual users can PureLoad simulate?

      This is mostly depending on the particular user definition of the system to be tested. Other factors are which hardware is being used to generate load and how CPU/network intensive the performed operations are.

      The PureLoad license limits the number of virtual clients (worker threads). Each client can be used freely to simulate user behaviour. As a rule of thumb, one can generally simulate one user with one virtual client or worker thread. Read more about this in Best Practices, Worker Threads.

      2.02 Does 1 virtual user equal 1 thread in usage?

      Sometimes but not always. It might be in this way but it does not have to be so. Threads have no context connected to them, they are a pure force. The only thing a thread do is to fetch a scenario and execute it. When the thread has executed one scenario it will fetch the next scenario and execute. If you are building your scenarios from an end user perspective then 1 VC = 1 thread. There is some more info on Best Practices, Worker Threads.

      2.03 How many worker threads can I use per worker?

      This depends on the platform as well as which version of Java VM being used. For most cases it should be technically possible to use at least around 2000 threads per worker. Also see Tuning PureLoad and the documentation Best Practices, Worker Threads.

      2.04 I want to use PureLoad servers located outside of my firewall. Can I do this?

      Yes. Read more about this in the documentation, Best Practices, PureLoad and Firewalls.

      2.05 Can I run virtualised PureLoad Load Servers?

      Todays powerful hardware is well suited for hosting a virtualised environment.

      Using standard server hardware you can run a number of OSs/workers in a virtualised environment. PureLoad Load Servers have been set up in a number of different virtualisation environments like OpenStack, VMWare and KVM.

      2.06 Does PureLoad support NTLM?

      PureLoad fully supports Basic and Digest Access Authentication. For NTML only limited support is provided (NTLMv1).

    • 3.0 - Installation and configuration

      3.01 How do I change the Java VM that PureLoad use?

      • In the PureLoad installation directory there is a .install4j directory.
      • In this directory create a file named pref_jre.cfg if it doesn´t already exist.
      • Open the file in a text editor.
      • Add the complete path to the root directory for the Java installation you want to use.
        Example: C:\Program Files\Java\jdk7.

      3.02 Cannot load custom tasks

      To load your custom tasks you first need to choose the tab ”Task Types”.

      The tab ”Task Types” is located towards the bottom together with the tabs for ”Scenario Editor” and ”Parameter Generators”.

      Then choose ”Task –> Load All Custom Tasks”.

      3.03 Can the PureLoad processes be automatically started if my server is restarted?

      It is possible to set up so that the processes are started automatically at re-start of your hardware but PureLoad does not provide any boot script for this. The processes are started manually with the start scripts that are available in <PURELOAD_HOME>/bin.

      3.04 Can I run several workers on one single host (OS)?

      Running more than one worker on a single host is not recommended in general.

      Each worker uses a base amount of memory just by starting. It is usually best to run one worker for each host and tune up the memory for the worker instead. When you reach the number of threads the OS can handle in one process, then you need to scale up with additional workers. Up to 2000 threads is usually OK, but the limit varies depending on OS and Java version.

      3.05 Where do I install the PureLoad license file and what IP-address do I need?

      The license is a text file that must be installed in the <install-home>/license directory.

      The license in managed by the Naming Server so the license file should be installed on the server where the Naming Server is executed.

      The IP-address specified in the license file must match the IP-address of where the Naming server is executed.

      3.06 I get "Port already in use" errors when trying to start PureLoad. Why?

      If you get error messages when starting PureLoad servers saying something similar to:

      Error starting NamingServer at: host[192.168.10.1]:1099 Exception message is: Port already in use: 1099; ....

      This means that the specified port is used by another process. The most common reason is that you already have an instance of the PureLoad server running. Another reason could be that the specified port is used by another program installed on the machine. In this case you must choose another port for the actual process. Read about System Properties in the documentation for more information.

      3.07 Problems installing PureLoad on Linux without X11

      If you see errors similar to:

      Starting Installer ...
      java.lang.NullPointerException
      at javax.swing.RepaintManager.currentManager(RepaintManager.java:249)
      at javax.swing.JComponent.repaint(JComponent.java:4805)
      ...
      Could not display the GUI. This application needs access to an X Server

      First make sure that you use Java 7 from Oracle:

      • Install Java 7 (if you haven't already)
      • Set environment variable JAVA_HOME to where you installed Java 7. For example:

        # export JAVA_HOME=/usr/java/jdk1.7.0_79

      • Start installer again
        # sh ./pureload_unix_5_2_3b3.sh

      If you still have problems, please contact support@pureload.com.

    • 4.0 - Scenarios and tasks

      4.01 Is it possible to convert my Jmeter, Tsung, and Silk scripts so that the test cases can be run by PureLoad?

      Yes, in most cases it is possible to convert Jmeter, Tsung, or Silk test cases so that they can be run in PureLoad. Contact info@pureload.com if you need support or help to do this.

      4.02 How do I structure Scenarios (test cases) when using PureTest Runner to fit XML output

      A PLC file normally represents a test suite. The reporting is per scenario which is typically used to represent a test case. So if you have a PLC file (test.plc) with 2 scenarios (Example 1 and 2), the JUnit XML report will look something like:

      <testsuites>
         <testsuite errors="0" failures="0" hostname="mymac" id="1" name="test" tests="2" time="6.26" timestamp="2013-12-16T09:58:45">
            <properties>
               ...
            </properties>
            <testcase classname="test.Example 1" name="Example 1" time="1.639"/>
            <testcase classname="test.Example 2" name="Example 2" time="4.621"/>
            <system-out>
            ...
            </system-out>
         </testsuite>
      </testsuites>

      4.03 How do I configure PureTest to do remote debugging for a custom task that I am writing?

      Add the following lines to your /bin/puretest.vmoptions:

      -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005

      You can then attach a remote debugger on port 5005.

      4.04 I am using the JDBCCOnnectTask. Where should I put the db driver in order for the task to run correctly?

      The DB driver jar should be put in <PURELOAD_HOME>/extensions

      4.05 What is the purpose of the “Max Connections” setting in the HttpInitTask?

      With ”Max Connections” you can set how many connections that should be used within a scenario when going to different hosts. Using the default (1) means that when changing from one host to another, the current connection will be closed and a new connection will be established for the new host. If you use a number higher than 1, the specified max number of connections will be established and kept open.

      4.06 I am using the HttpInitTask and HttpGetTask to fetch some content but when running it I do not see any response, how can this be?

      In the HttpInitTask the default content type saved is text/. If your returned content is of another type this has to be specified. For example Save Content Types: text/, image/ will save content of types text and image. Using Save Content Types: text/, application/json will save content types starting with "text/" and "application/json". Content types are specified as MIME media types.

      4.07 Is there more info available on what can be done inside ScriptTask?

      The ScriptTask uses BeanShell which is a scripted Java dialect:

      Many things can be done using scripts, but they will use more system resources. When doing load tests it is good to try and minimize the usage of scripts.

      4.08 RuntimeSettingsTask, what does Stop On Error and Timeout Is Error mean?

      Stop On Error: This means that the execution of the scenario or task sequence stops if an error occurs. This is typically to limit the number of error following the original error, or to avoid continue the scenario/tasksequence with possible corrupt data.

      Timeout Is Error: This is to place the timeouts on the error statistics or in the time-out statistics.

      4.09 Do we need a HttpCloseTask each time we use HttpInitTask

      TheHttpCloseTask is generally only needed when you wish to explicitly close the HTTP connection(s) in the middle of a scenario.

      When a scenario finishes, it will automatically close all HTTP connections.

      4.10 Many Tasks has Timeout set to -1. What does this mean?

      The Timeout variable is used to set the valid timeout value for each Task. The value -1 means that the task will never timeout. When a Task passes the timeout value an error will be reported.

      4.11 What HTTPS/SSL cipher suites are supported by the HTTP tasks?

      This depends on the Java version used. For latest Java 8 version see:
      http://docs.oracle.com/javase/8/docs/technotes/guides/security/SunProviders.html

    • 5.0 - Test execution and results

      5.01 My test seems to hang. What is happening?

      The absolutely most common reason is that the server application does not respond. Try specifying a timeout for the tasks and see if the test continues (with a timeout being reported).

      5.02 I have a problem that I cannot execute tests using all threads available. What can be the problem when I only reach 10% of estimated number of transactions per second?

      Check the response times for you operation in the Timeslot-graph. In the Timeslot-graph you most likely will find some transactions that takes long time (in the seconds range). You might also have some transactions that have a long timeout and are therefore occupying the worker threads for other requests.

      5.03 Why do I get "Out of memory" errors?

      If "Out of memory" exceptions appear in the worker log then you will need to increase the memory size of the worker JVM. To do this, modify the worker.args property in the pureload.properties file found in the bin directory. For example to increase the max heap size to 3 GB, change this as follows:

      worker.args=-Xmx3G -Xss256K
      Note: Always keep the -Xss setting as is.

      If you run out of memory in the Console or the Naming, Taskspace or Manager server you must increase the heap size, defined in a file named program.vmoptions, where program is the program. You find these files in the bin directory. For example to increase the max heap size for the console to 2 GB, change the console.vmoptions as follows:

      -Xmx2G

      This exception may also be caused by running out of other OS resources, for example max. number of open file descriptors on UNIX (see Tuning PureLoad, File Descriptors on a UNIX box).

      Large scenarios that are executed many times (iterations) might cause the console to report out of memory problems. This is typically related to when the Update Interval setting in Tool Properties is set to low (polling to often). Increase the number of seconds and try again.

      Also see the documentaion, Best Practices, Long/Large Test Execution.

      5.04 Why do I see "Address already in use" errors, when executing tasks?

      If tasks fails with exception similar to:

      java.net.BindException: Address already in use: connect

      this means that you are out of TCP/IP connections on our worker machine(s).

      See Tuning PureLoad, Network Connections for more information.

      5.05 How should the min/max/average values in the time slot graph be interpreted?

      All values are calculated per timeslot.
      The timeslot length is determined by the "Worker Poll Interval" in the Tool Properties.
      So with a poll interval of 20 seconds, each slot will be 20 seconds long. During this time period, many results may have been processed by each worker thread.
      With Y-Axis 1 set to "Min" this will plot the minimum value of all results measured during each 20 second slot. The same goes for "Max" and "Average".

      5.06 How is TTFB calculated and presented on the Results Tab?

      TTFB is measured as the duration from making an HTTP(S) request to the first byte of the page being received. This time is made up of the socket connection time (if no previous connection), the time taken to send the HTTP request, and the time taken to get the first byte of the page.

      Three measurements are presented. The minimum time to first byte (Min TTFB), the average time to first byte (Average TTFB), and maximum time to first byte (Max TTFB).

      For the Time Slot and Time Slot Graph presentation the minimum, maximum and average is calculated for each slot. So if a poll interval of 10 seconds is used the minimum, maximum and average values will be calculated from within each individual interval.

      For the Summary Graph the minimum, maximum and average TTFB is given as the result over the whole test. Here the minimum will be the minimum value ever measured during the whole test (among all values in all time slots), and maximum will be maximum value ever measured during the whole test.

      Note that values for a sequence, or for All Tasks, is not the sum of the children (included tasks or sequences). They are the minimum / maximum TTFB of one particular execution of the sequence.

      5.07 How can I increase load with 10% during test execution?

      You can increase change load during execution by going into "Edit->ReplaceScenario Parameters"

      See also our documentation.

      5.08 I got an "Unhandled Task Exception" during test execution, what should I do?

      We are sorry to say that you have encountered an error in the PureLoad software.

      For us to give you the best and fastest support we would be happy if you can save a stacktrace for the error. To do this, please enable
      -Dworker.error.stacktrace=true

      in

      pureload.properties for the worker manager.

      This is disabled by default (to save memory on the workers).

      Now run the test case again, and then send the worker logs to support@pureload.com

      5.09 My tests are failing and I need help from PureLoad support, what data should I provide?

      When contacting PureLoad support for help with problems related to test execution you can help speeding up the trouble shooting process by sending us the Comparer Data and your tests that are saved in the .plc file. The Comparer Data can be saved after test execution by going into "File - Export Comparer Data".

      5.10 What is the difference between the two Distribution Policies in practice

      In Tool Properties you can choose two Distribution Policies, to follow "Exact Iterations" or to "Follow Distribution" where the Exact Iterations is used by default.

      Let's say that you want to execute 100 scenarios per second.

      If execution for a while goes below 100 scenarios/sec (say 80 due to high response times and not enough threads) for a while. If you select "Exact iterations" taskspace will try to adjust to a higher intensity when response times again lowers (go above 100) to execute the numbers of iterations specified before start of test.

      If you select "Follow distribution" taskspace will try to adjust the intensity as close to 100 scenarios/sec as possible. But it will never try to "catch up" and exceed 100 even if it's been below this for a while.

      5.11 Is it possible to know the number of TPS or tasks/sec each worker deliver during a traffic run?

      This can be seen in the Result->Summary Tab by selecting the worker in the left menu. Note that this is tasks/s since beginning, e.g not per time slot.

      5.12 When running the same test case using HTTPS I get six times higher CPU values on the load server than running the same test case with HTTP. Is this normal?

      Yes, PureLoad use a full-stack simulation of the client and this lead to that significantly higher CPU is required for the encryption of HTTPS.

      13 How high Pureload CPU usage can be allowed?

      A general recommendation is not to have a CPU and memory usage above 70-80%.

      5.14 Are failed tasks part of the Average, Max, and Min response time calculations

      Failed or timed out tasks are not included in the min/max/average response time calculations.

  • Solver

    Coming soon

About Emblasoft

From innovation, to validation and smooth operation, our solutions help operators and equipment vendors deliver outstanding services and performance to their customers.

Emblasoft Test & Measurement AB
Hammarby allé 29
120 32 Stockholm, Sweden

Send us an email: contact@emblasoft.com

  • Linkedin
  • Twitter
Ready to talk to us?