A FAQ - Frequently Asked Questions
| Evaluation and licensing | ||
|
1
| Is an evaluation version available for download? | |
|
Yes. Please visit www.qftest.com/en/product/download.html. |
||
|
2
| Do I need anything else? | |
|
Normally a license file is required to run QF-Test. It will run without a license, but it will not let you save any files or load any files that were not provided by Quality First Software GmbH. This is sufficient for getting a first impression, working through the tutorial and making a first attempt at running your application under QF-Test. To go beyond that, you'll need a license file. |
||
|
3
| So how do I get a license? | |
|
You can obtain a free trial license valid for two weeks by filling in the request form at services.qftest.com/en/license/request/. |
||
|
4
| How much does QF-Test cost? | |
|
License types and prices for QF-Test are listed at www.qftest.com/en/product/pricing.html. |
||
|
5
| Does QF-Test need an additional license server? | |
|
No, not necessarily. QF-Test handles multi-user license management for local networks by itself, provided that IP multicast works. For floating licenses across multiples sites and in case of restricted networks, a dedicated license server is available. The license server itself is free of charge and server licenses are very reasonably priced. For further information about the license server, please get in touch with QFS via sales@qftest.com. |
||
| Support, training and feedback | ||
|
6
| Where do I get help troubleshooting? | |
|
||
|
7
| What about training for QF-Test? | |
|
QF-Test trainings for beginners and advanced users in German and English language take place regularly here at QFS. There is also the option for webinar-based or on-site consulting and training. Details can be found on our website. |
||
|
8
| How can I request an enhancement to QF-Test? | |
|
Enhancement requests are welcome anytime at support@qftest.com. |
||
|
9
| Where do I report a QF-Test bug? | |
|
Simply contact our support team and we will have a look. Please be sure to provide as much information as possible, especially test suites and run logs. |
||
| Test execution | ||
|
10
| Why do tests fail today that were OK yesterday though nothing changed in the meantime? | |
|
As the first step, please ensure that really nothing has changed as automatic updates of Java or browser versions may happen without being recognized. Irrespective of changes there can be tests that fail only occasionally for no apparent reason. This may sound like a bug in QF-Test, but that's rarely the case. In complex, multithreaded environments, many actions and interactions depend on timing. The first thing to try is to introduce delays at critical points. If that helps you can focus on minimizing the delay by using Check nodes with a timeout or Wait for component to appear nodes to wait for a certain condition. If delays don't help you need to dig deeper and try to understand what's happening. It's not unlikely that the root cause is a bug in your application - typically a tricky one that shows only occasionally depending on timing or other circumstances. The blatant, obvious bugs are typically found earlier - these tricky ones are part of what testing is all about. The detailed logs and screenshots that QF-Test creates help analyzing such situations. Our support can help you interpret the data and isolate the relevant information to forward to development. |
||
|
11
| How do I run a test automatically from the command line, a test management tool or some other kind of script? | |
|
You can run QF-Test in batch mode through the command line argument
|
||
|
12
| Is it possible to test two applications running at the same time in two different JVMs? | |
|
Yes, just start two SUT clients with different names. You can then control both of them. |
||
|
13
| I've got a long-running test and QF-Test runs out of memory. How can I prevent that? | |
|
To increase the available memory, start QF-Test with the argument -J-Xmx1280m (or an even greater value; QF-Test uses up to 1024 MB by default). On Windows you can alternatively use the QF-Test Java Configuration tool, available from the Windows system menu. On Linux rerunning the QF-Test setup script (setup.sh) also lets you adapt memory usage. Of course the amount of memory you can use depends on your computer. Please refer also to "Installation and startup" for further details. There are a number of ways to reduce the memory use of QF-Test:
|
||
|
14
|
Hard mouse events and drag-and-drop operations do not work flawlessly, components cannot be found,
the run log contains black or corrupt screenshots.
What do I have to take care about for test execution? |
|
|
GUI testing requires an unlocked, active desktop. That is the only way to ensure that the SUT behaves the same as if a normal user interacts with it. To make sure that your test environment complies with this requirement, you'll probably need to tweak its setup. This holds true notably for continuous integration and build tools like Jenkins (c.f. "Integration with Development Tools"). Otherwise, you might run into serious trouble during Test execution, for example black screenshots in the run log (c.f. "The run log"), failing drag-and-drop operations, non-working hard mouse events or even problems during component recognition (c.f. "Components"). Java WebStart applications fail to start up. Chapter Hints on setting up test systems contains useful tips and tricks to set up your test systems. Before running a GUI test, check whether the following conditions are met:
Technical background:
To get round all that problems you should consider to work with virtual machines, especially from a security point of view. If you execute the tests on a virtual machine, the above-mentioned requirements apply for this virtual machine only, not for the host. You can lock the host and don't care about session management on the host. |
||
| Scripting | ||
|
15
| How can I access objects in my application that are not components? | |
|
You cannot get an object out of the blue, some kind of registry must
exist that returns the object from a class static method. Typical
examples in the standard Java API are
|
||
|
16
| Fine, but how do I use these from Jython, Groovy or JavaScript respectively? | |
|
This is standard Jython stuff: Simply import the class and call
its methods, e.g.
|
||
|
17
| How can I access additional Java classes from a script? | |
|
To make additional Java classes available to Jython, Groovy and JavaScript, put them in a jar file and place that in QF-Test's plugin directory (see "The plugin directory"). |
||
|
18
| How can I throw an exception from a script? | |
|
There are two ways to do that:
|
||
|
19
| Which external editor should I use? | |
|
That's a matter of taste, to some even religion. A comprehensive list of editors for all kinds of operating systems that support Python syntax highlighting and other goodies is available at https://wiki.python.org/moin/PythonEditors. There are probably dozens of suitable editors with syntax highlighting for Jython, Groovy and JavaScript - jEdit (www.jedit.org) is only one of them. |
||