Squish GUI Tester - License Server FAQ

Last edited on

General Questions

Is the License Server being hosted by the Qt Group/The Qt Company?

No. The License Server needs to be installed locally in your network.

There is no package for macOS in the download area, can I install the license server on mac machines too?

Since Squish 7.0.0 the license server can also be installed on macOS.

Can I use my Floating Tester License for nightly execution?

Yes, provided you have a free Execution Seat, or if you have a Developer Seat, that can be used for command line or CI execution if the IDE is closed before a test is started.

Do you support virtualizing the License Server?

It is technically possible to run the License Server in a virtual machine, but we don't offer a ready made solution or customer support for questions regarding the set up process. Every company has different needs for their License Server so we can't offer a one-size-fits-all solution.

Are all Squish packages compatible with floating licenses?

The support for floating licenses has been introduced as of version 6.7.0. Older versions do not know how to connect to the server.

Licenses

Can I use my existing license key with the License Server?

The License Server serves a new kind of licenses unrelated to other type of keys.

Can I convert my existing license to use the Floating License Server?

Yes. Please get in contact with your account manager at The Qt Company.

Do I need a Tester License even though I create my tests without the Squish IDE?

Yes. The terms of the License Agreement tie the "ability to create, edit and debug test cases" to a Squish Tester License. Independent of whether the bundled IDE/editor is used or not.

The rights associated with the Execution Licenses are restricted to the plain execution of tests.

Can I buy solely Floating Execution Licenses?

The Execution Licenses always go along with Tester Licenses. A minimum of one Floating Tester License is required.

Can the License Server serve separate sets of license keys?

Yes, since Squish 7.0 licenseserver can serve multiple license configuration files as long as they use different port numbers. This can be achieved by putting all license configuration files in the default licenses directory.

Can I see how many licenses are currently in use?

Yes, since Squish 7.0 the license server features a REST interface that provides monitoring capabilities.

https://doc.qt.io/squish/license-server.html#rg-licenseserver-rest-api

Can I share the License with my colleagues?

Yes. Floating licenses can be shared with other team members. The License Server is a floating so a License is meant to be shared if Person 1 stops working with Squish (and closes the IDE) Person 2 can start working and open the IDE. This is useful for a team spread worldwide.

Does the License Server itself consume one of my paid licenses?

No.

What does the "variable" value in the license server logs stand for?

A "variable" seat is an execution seat. The license server display's this differently as it may still be subsumed under a Tester License when a Squish IDE instance is later started on the same machine.

Setup

Can we expose the license server over the Internet?

The license server is intended to be run in an enclosed network and is because of this not security-hardened and should never be run in a hostile environment.

Should we install the license-server on each user machine?

The license server is intended to be installed on a centralized machine on the same network, where the machines are located that are going to be used for running or writing tests.

Who has to generate the machine ID?

We only need the machine ID from the system which is going to host the License Server.

It is not necessary to send a machine ID for the machines used by the end users of the floating license.

Can I use Docker to run the License Server?

No, it is currently not supported to run the License Server as part of a docker container.

Can I run the License Server as a Service?

Running the License Server as a Windows Service is support since 6.7.1. You can use systemd on Linux to setup a service for the License Server if your distribution supports it.

Is there any way to revoke licenses or otherwise manage them manually?

There is currently no way to manually revoke a License for a client. There are plans to offer such functionality with a REST API.

How to connect to License Server over an encrypted SSH connection?

To secure a connection to License Server an SSH Port Forwarding (aka SSH Tunneling) can be used. Details are described in the Squish License Server over SSH article.

Usage of Squish with License Server

Can I start the IDE on different machines with a single Floating Tester License?

Each invocation of the IDE requires a dedicated Floating Tester License.

Can I start multiple Instances of the IDE on the same machine ?

It is not possible to have more than one instance of the IDE on each machine. Only the first instance will be granted a license.

Can I run multiple tests in parallel with one Floating Tester License or one Floating Execution License?

No for x parallel running IDEs / Tests you would need x number of Licenses.

When is the License check performed? Only once when the Squish process starts or also during the execution?

The License check is performed when the process starts and then keeps a connection to the License Server alive. As long as the connection is alive the process holds a valid License.

How does the License Server handle it if a machine that is granted a License goes offline? Can that License be recovered?

If a client machine goes offline the License will automatically freed in the License Server.

What happens if the License Server crashes or get terminated by accident? Does this stop the IDE / current execution?

The IDE will open a dialog informing you about an error and will give you the chance to enter a different License Server URL or key. The behavior of a Test Execution losing it's License is somewhat undefined at the moment. The optimal solution in the long run would probably be to terminate the test and end the report with an error pointing out the License issue.

Will the License Server try to communicate to agents outside of our local network?

The License Server only communicates with the license clients of Squish GUI Tester installations. The license server does not need internet access. One priority for us is that customers which can not allow such communication should also be able to use floating licenses.

Can I move the License Server onto a different machine later on or change the port it is using?

Yes, this is possible. Please create a respective support request at the customer portal via Support Center > Support Requests > Create a request:

https://account.qt.io/s/support-center

(For "Request type" use "Quality Assurance Tools Support", for "Product" use "Squish".)

Troubleshooting

What causes a timeout error?

The License Server has not been able to acquire a license in the expected time.

This strongly indicates a network issue. Most likely the network packets cannot be routed to the License Server. You can confirm that by pinging the server with ping .

If that confirms a packet loss, please ask your system administrator because there can be many reasons for that which are unrelated to the License Server itself.

What causes a "malformed configuration" error?

The file itself could be corrupted. You might have made a small mistake while manually creating the License Server config file. Please use the "Download" button in the Customer Area.

Another reason would be that something is wrong with the path you passed to the licenseserver executable with the -c option. Please use an absolute and make sure that it is really correct. If your path includes spaces make sure to correctly escape those or preferably don't use paths with spaces in them.

Why can't I access the License Server?

The License Server can only grant licenses to clients which can access its network. When you host the License Server you need to make sure that the computers of all team members can communicate with the License Server.

That means the clients need to be in the same network as the License Server or share the same VPN. If no such network exists a cloud provider like AWS could be an option. Since you need to host the License Server yourself, you are also responsible for making it available to all members of your team and securing it against access from 3rd parties.

Why doesn't my License Server start as a Windows service?

The first License Server supporting that feature is version 6.7.1 so make sure you are using that or a more recent version.

If you still have problems, do a dry run first. Simply try to run the License Server with cmd.exe but without the --runService argument.

The most common problem here is some error in the executable path or the path of the License Server config file. Make sure to use absolute paths for both, and check for typos or unescaped spaces (having no spaces in the paths usually makes things easier). If that was successful use that command to create the service but don't forget to add the --runService argument again.