已知问题 - 自定义 API 测试活动
相关项: API 测试
常规
本部分介绍在运行 API 测试时需要注意的常规问题。
在 UFT One 15.0.2 或更高版本中运行早期版本中的自定义活动
UFT One 15.0.2 使用 log4net.dll 的更新版本。
如果自定义活动是由早期版本的“活动向导”创建的,则必须使用“<Unified Functional Testing 安装>/bin”文件夹中的 log4net.dll 重新编译这些活动,然后才能在 API 测试中使用它们。可以使用随 UFT One 15.0.2 或更高版本安装的活动向导来重新编译活动。
Web Service
命名约定 |
不能导入其名称受 Windows 操作系统限制的 WSDL 文件。 此列表包括: CON、PRN、AUX、NUL、COM1、COM2、COM3、COM4、COM5、COM6、COM7、COM8、COM9、LPT1、LPT2、LPT3、LPT4、LPT5、LPT6、LPT7、LPT8 和 LPT9。 变通方法: 在导入之前重命名 WSDL 文件。 |
不支持的 WSDL |
不支持以下 WSDL:
|
使用同一 Web Service 进行多次测试 |
在同一个解决方案中使用一个或多个相同的 Web Service 打开很多测试时,UFT One 可能会导致内存泄漏。 变通方法: 将 Web Service 移至文件系统或 ALM 存储库。 执行以下操作:
|
导入为服务器响应的 Web Service |
对于导入为服务器响应的 Web Service:
|
Web Service 安全性
从 UDDI 导入的 Web Service | 从 UDDI 导入的 Web Service,不支持身份验证和代理服务器安全性。 |
WCF 类型的 Web Service |
在处理 WCF 类型的 Web Service 时,UFT One 存在下面的已知问题:
|
消息级别安全性 |
在测试需要消息级别安全性的 Web Service 时,Web Service 安全场景仅支持 SOAP V1.1。 对于 SOAP 1.2,请使用 WCF 类型的场景。 |
SAML 安全令牌 |
在处理 SAML 安全令牌时,UFT One 存在下面的已知问题:
|
SOAP 1.2 |
在处理 SOAP 1.2 时,UFT One 存在下面的已知问题:
|
更新 Web Service
当比较 REST 步骤与其原型时,不会将请求/响应正文内容中的差异视为冲突。
因此,当解析其内容与原型正文内容不符的 REST 步骤时,正文内容将不受影响。
异步 Web Service 测试
对于导入为服务器响应的 Web Service:
-
启用 SSL 选项时,UFT One 临时将 SSL 证书绑定到系统 http.sys 级别上的指定端口。添加绑定后,如果您在侦听阶段从任务管理器结束 UFT One.exe 进程,则不会自动从系统中删除绑定。
变通方法: 使用实用程序 (例如 httpcfg.exe 或 netsh.exe) 手动删除绑定。
-
当使用 SSL 时,不支持文件中提供的证书。如果将测试移到其他计算机,证书将不可用。
变通方法: 运行测试前,将证书添加到本地计算机存储中。使用完测试后,根据需要删除证书。
REST 服务
导入架构 |
将架构导入到 REST、HTTP 或 SOAP 检查点中会删除输入属性的链接。 |
属性之间的链接 |
如果在同一个 REST 方法的输入和输出属性之间建立链接,然后删除输入属性而不删除链接,则链接表达式将仍然保留在输出属性中。 如果您以这种状态保存测试,则可能将无法重新打开它。 变通方法: 在删除链接的源属性之前或之后,立即显式删除链接。 |
REST 方法原型 |
在“添加/编辑 REST 服务”对话框中定义 REST 方法原型以使用剪裁、忽略或停止测试选项时,在“检查点”窗格的验证列中选中相应的复选框。 |
检查点 |
在处理检查点和 REST 服务时,UFT One 存在下面的已知问题:
|
JSON 内容中的数据类型 |
在构建 JSON 内容并将其加载到 OData 和 Swagger 的 XML 网格模型中时,除 String 之外的所有其他数据类型都作为值包含在 JSON 内容中。 |
从早期版本的 UFT One 升级 |
如果您已升级到 UFT One 14.03 或更高版本,并且正在处理在早期版本的 UFT One 中创建的测试,即使您不使用 Swagger 服务,也可能会在上下文菜单中看到针对本地 REST 活动的“更新 Swagger 服务”选项。 在类似情况下,可以忽略此选项。 |
解决冲突 |
如果 REST 服务的 URL 或源文件的操作名称或相对 URL 发生了变更,则无法使用“解决冲突”向导解决这些冲突。 而是需要从头开始导入源并手动更新步骤。 |
Web 应用程序服务
导入 WADL 时不支持以下元素。UFT One 不会将这些元素导入测试内部的 WADL 层次结构:
-
Grammars 元素
-
Resource_type 元素
-
Link 元素
UFT One 还会忽略这些元素的所有子元素且不会将其添加到测试的 WADL 中。
此外,如果使用 href 属性链接到其他元素,则必须引用同一个 WADL 文件中的元素。不支持 WADL 文件之间的链接。
网络捕获活动
从网络捕获文件添加到测试的步骤不包括:
-
针对 Web Service 调用和 SOAP 请求的安全设置
-
任何类型步骤的 Web 身份验证信息
-
HTTP 请求的 Cookie 数据
-
作为 Web Service 调用一部分发送的附件
.NET 程序集活动
不支持导入或添加对 64 位 .NET 程序集的引用。
使用 API 测试扩展性创建的自定义活动
在处理自定义活动和 API 测试扩展性时,UFT One 存在下面的已知问题:
Visual Studio 版本 |
必须在 UFT One 所安装的同一台计算机上装有 Visual Studio 2012 才能使用活动向导创建自定义活动。 |
签名文件位置 |
如果将签名文件放在插件文件夹的子文件夹之下,则可能会出现以下错误。 Service Test 无法拖放活动: 未声明类型“http://hp.vtd.schemas/types/v1.0:GeneralPropertiesType”。 变通方法: 修改 Types 架构的相对路径。 例如: .schemaLocation="../../dat/schemas/Types.xsd"。 |
签名文件修改 |
如果您修改签名文件中的活动结构,则将无法使用该活动打开测试。 要修改活动结构,请执行以下操作:
|
从早期版本的 UFT One 升级 |
运行测试时,在 UFT One 12.00 之前的版本中创建的自定义 Java 活动将失败。 变通方法:
|