Known issues- Custom API testing activities

Relevant for: API testing only

This topic describes known issues when working with custom API testing activities.

General

This section describes general issues to be aware of when running API tests.

Running custom activities from earlier versions in UFT One 2021

UFT One 2021 and later use a version of log4net.dll that is newer than the one used before.

If the custom activities were created by earlier Activity Wizard versions, you must recompile those activities before you can use them in your API tests.

Recompile the activities with the log4net.dll from the <UFT One installation folder>/bin folder. You can use Activity Wizard installed with the current UFT One version to recompile them.

Back to top

Web services

Naming conventions

You cannot import WSDL files with names that are restricted by the Windows operating system.

This list includes: CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, and LPT9.

Workaround: Rename the WSDL file before the import.

Unsupported WSDLs

The following WSDLs are not supported:

  • WSDL version 2.0

  • WSDLs containing a <appInfo> element.

  • RPC Encoded WSDLs configured as Asynchronous Web services.

  • WSDLs authenticated by HTTP digest on Apache servers.

Multiple tests using the same Web services

When opening many tests in the same solution using one or more of the same Web services, UFT One may develop a memory leak.

Workaround: Move the Web service to the file system or ALM repository.

Do the following:

  1. Import a Web service.

  2. In the Toolbox pane, right-click the Web Service activity and select one of the following:

    Move to > File System Activities

    ALM Activities

Web services imported as a server response

For a Web service imported as a server response:

  • RPC type WSDLs cannot be imported as a server response. If you attempt to update a service from an RPC encoded WSDL, it will create a duplicate entry.

  • If you end the UFT One.exe process during the listening stage, after the binding was added, the binding will not be removed from the system.

    Workaround: Remove the binding manually using a utility such as httpcfg.exe or netsh.exe.

  • When working with SSL, certificates from a file are not supported. If you move the test to another machine, the certificate will not be saved with the test.

    Workaround: Add the certificate to the local machine store before the listener starts, and remove it at the end of the listening process.

Back to top

Web service security

Web services imported from UDDI Authentication and proxy security are not supported for web services imported from a UDDI.
WCF-type Web services

UFT One has the following known issues when working with WCF type Web services:

  • Configuring different security settings for operations residing on the same port is not supported.

  • Some of the user event handlers (such as the AfterProcessRequestSecurity, BeforeProcessResponseSecurity, OnSendRequest, and OnReceiveResponse events) will not be invoked.

  • When working with Federation type scenarios that use STS (Security Token Service), you cannot change the SOAP version.

Message level security

When testing Web Services that require message-level security, the Web Service security scenario only supports SOAP version 1.1.

For SOAP 1.2 use a WCF type scenario.

SAML security tokens

UFT One has the following known issues when working with SAML security tokens:

  • When using a SAML security token for Web services security, user-provided content may contain creation and expiration timestamps.

    To extend the life of the test, we recommend that you hard-code an expiration date in the distant future. In this is not possible, change the timestamp by implementing the OnBeforeApplyProtocolSettings event.

  • When using a SAML security token for Web services security, if you edit the values in Grid mode, they may not be updated in UFT One.

    Workaround: To update the values, switch to Text mode and save the test.

  • Web Service steps are not supported when using a SAML token with a certificate from the file system.

    Workaround: Install the certificate to the Windows store and select the certificate from the store.

SOAP 1.2

UFT One has the following known issues when working with SOAP 1.2:

  • You can choose only UserName or X509 tokens when configuring the message level security.

  • When configuring the canonicalization algorithm and the transform algorithm for the message signature, you cannot use the following format: http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#STR-Transform.

Back to top

Updating Web Services

When comparing a REST step to its prototype - a difference in the request/response body contents is not considered a conflict.

Therefore, when resolving a REST step whose contents do not match the body contents of the prototype, the body contents will not be affected.

Back to top

Asynchronous Web service testing

For a Web service imported as a server response:

  • When enabling the SSL option, UFT One temporarily binds the SSL certificate to the specified port on a system, http.sys, level. If you end the UFT One.exe process from the Task Manager during the listening stage after the binding was added, the binding will not be automatically removed from the system.

    Workaround: Remove the binding manually using a utility such as httpcfg.exe or netsh.exe.

  • When working with SSL, certificates from a file are not supported. If you move the test to another machine, the certificate will not be available.

    Workaround: Add the certificate to the local machine store before running the test. If desired, remove it after you finish working with the test.

Back to top

REST services

Importing schemas

Importing a schema to a REST, HTTP, or SOAP checkpoint may remove the links of the input properties.

Linking between properties

If you link between input and output properties in the same REST method and then delete the input property without removing the link, the link expression still remains in the output property.

If you save the test in this state, you may be unable to reopen it.

Workaround: Delete the link explicitly either before or immediately after deleting its source property.

REST method prototypes

When defining a REST method prototype in the Add/Edit REST Service dialog box - in order to use the Trim, Ignore, or Stop test options, select the check box in the Validate column, in the Checkpoints pane.

Checkpoints

UFT One has the following known issues when working with checkpoints and REST services:

  • XPath checkpoints are not supported for HTTP and REST activities.
  • When running a REST method using the Run Step command, checkpoints of dynamic property values in the method linked to other property values (input or output) are ignored.
Data types in JSON content

When building JSON content and loading it in the XML Grid Model for OData and Swagger, all data types other than String are included as values in the JSON content.

Upgrades from earlier versions of UFT One

If you have upgraded to UFT One 14.03 or higher, and are working with a test created in an earlier version of UFT One, you may see the Update Swagger Service options in the context menu for a local REST activity, even if you are not working with a Swagger service.

In such cases, you can ignore this option.

Resolving conflicts

If the URL or source file for your REST service has had changes in operation names or relative URLs, you cannot resolve these conflicts using the Resolve Conflicts wizard.

Instead, import the source from scratch and update the step manually.

Back to top

Web Application Services

The following elements are not supported when importing your WADL. UFT One does not import these elements into the WADL hierarchy inside your test:

  • Grammars element

  • Resource_type element

  • Link element

Any child elements of these elements are also ignored by UFT One and not added to your WADL inside the test.

In addition, if you use the href attribute to link to other elements, you must refer to an element in the same WADL file. Linking between WADL files is not supported.

Back to top

Network Capture Activities

Steps added to your test from a network capture file do not include:

  • Security settings for Web service calls and SOAP requests

  • Web authentication information for any type of step

  • Cookies data for HTTP request

  • Attachments sent as part of the Web Service call

Back to top

.NET Assembly Activities

Importing or adding references to 64-bit .NET assemblies is not supported.

Back to top

Custom activities created with API Testing Extensibility

UFT One has the following known issues when working with custom activities and API Testing Extensibility.

Visual Studio version

You must have Visual Studio 2012 installed on the same machine as UFT One to create custom activities using the Activity Wizard.

Signature file location

The following error may occur if you place the signature file beneath a sub-folder of the addin folder.

ServiceTest was unable to drag and drop the activity: Type 'http://hp.vtd.schemas/types/v1.0:GeneralPropertiesType' is not declared.

Workaround: Modify the relative path of the Types schema.

For example:

.schemaLocation="../../dat/schemas/Types.xsd".

Signature file modifications

If you modify the activity structure in the signature file, you will be unable to open tests using that activity.

To modify an activity structure, do the following:

  1. Create a new activity with the new structure.
  2. Replace all of the test steps using the old activity.
  3. Remove the old activity implementation.
Upgrades from earlier versions of UFT One

Custom Java activities created in versions of UFT One prior to 12.00 will fail when you run your test.

Workaround:

  1. Remove the ServiceTestCall.java interface from the project in which you created the custom Java activity..

  2. Change the project package name to something other than hp.st.ext.java.

  3. Add the ServiceTestCall.jar file to your classpath. This file is located in <UFT installation path>\Addins\ServiceTest\JavaCall\Java Interface\bin.

  4. Recompile your Java project.

Back to top