What is our primary use case?
We use both the on-premises and cloud deployment models of this solution. The testing tool needs to connect to the real environment and that almost always means on-premises. However, you can also use a cloud variant, but then you're working on virtual machines in the cloud.
What is most valuable?
The most valuable feature for me is the number of protocols that can be tested. It not only tests Web, but also SAP, Siebel, .Net, and even pdf. That's a strong point of this tool because open source tools like Selenium can run only one protocol, like Web, for example. A lot of legacy systems do not use Web as their front end, however. They use a Windows-built .Net application or something else that is not web-enabled.
What needs improvement?
It's now too heavy and they should be making it faster. We do an attempt at automatic regression testing. We schedule a test to start at a certain time. It takes a lot of time to download the resources and start UFT. Competitors in this area have tools that start faster and run the test faster. For example, if the test at our side will take 10 minutes, another tool will do that in one minute.
I would like to see them add a feature that tells you if you can run parallel sessions in it. If it were a lot faster than the Chrome version that would be a major win.
For how long have I used the solution?
We've been using various versions of UFT for almost 20 years.
What do I think about the stability of the solution?
The product itself is a stable tool when running on a stable machine. However, a lot of things can influence the stability of the tool. Windows updates can have an influence on the stability of the product. Virus scanner local policies can have an influence on the stability of the product.
What do I think about the scalability of the solution?
It's a single run, so that means that you cannot usually use it multiple times in one session.
How are customer service and technical support?
The problem is that when you run this through a development tool you must be an actual developer to program the script language. Normally there are other script languages for example, .Net or Java. When you have Java development name, then this tool would normally not fit into it because it has another language. It chooses another language, so that would be complicated for developers to use it. And the problem is that sometimes the programming language it too complex for just help us to make scripts.
Which solution did I use previously and why did I switch?
The reason we chose this solution is because it is the company-wide chosen solution. It integrates with other tools, such as ALM, a test management tool. We are also going to move up to Octane, but Octane also integrates with UFT. Octane also introduces the possibility of connecting to other tools via Jenkins or Bamboo. The main connection with most ports will be UFT, though. If you look at other tools that are compatible in the market, such as IBM or smaller, open-source tools, they will fit for us, but they have the issue that they only work with one protocol. They only work with Web. If you have complex protocols, then you are forced to use the commercial solutions. IBM or another one that's based on another technique would then also work.
How was the initial setup?
For me the setup is simple but I think that when you have to do it for the first time, you have a lot of choices which you can make. Then it would be complex, but I think that with the knowledge that I have it is easy. I can do the installation of such a tool in 30 minutes. It can also be set up in collaboration with other tools, but then you have to set some environment settings before you can do that. If you do not know that, then you will need to search for that information before you have the answer. That's some knowledge that you have to be aware of.
What other advice do I have?
Testing is much more complicated than presented by the provider. They make it look like it's easy, but that's not the case. There is a lot of work put into it and you must also maintain the scripts. Sometimes people think that you don't have to maintain it, but scripts will not update themselves. There is no artificial intelligence in these kinds of tools.
For example, if you have a login page and you get an update then you also have to update your script. This is because it used an object repository where it put in some objects to verify it. When objects change, the script won't run or at least it will fail. There are already tools that have a functionality that can update the object repository that it uses because it sees similarities in the tests that would normally run. The tool sees an update to objects and it can interpret that as a correct version of the tests that should run.
I would rate UFT overall as seven out of ten.