提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:莫成敏|2020-03-04 14:19:15.707|阅读 976 次
概述:本文介绍了如何在自动化测试中使用Java类,本文中的信息仅适用于桌面应用程序。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
TestComplete是一款具有人工智能的自动UI测试工具,利用自动化测试工具和人工智能支持的混合对象识别引擎,轻松检测和测试每个桌面,Web和移动应用程序。使用TestComplete,可以提高测试覆盖率并帮助提供经过实战考验的高质量软件。本文介绍了如何在自动化测试中使用Java类,本文中的信息仅适用于桌面应用程序。您可以从脚本中调用驻留在任何Java类中的例程。
要求
要检查插件是否可用,请选择File | 从TestComplete主菜单安装扩展,然后在随后的对话框中搜索插件。如果该插件不存在,请重新安装TestComplete。
通过JavaClasses对象调用Java例程
您可以使用该JavaClasses对象访问Java类及其方法和属性。设置如下:
1、指定Java虚拟机的模块。
为了使脚本引擎能够调用Java类的函数,您应该指定将用于承载这些类的Java虚拟机模块。为此,请使用“Java Bridge选项”对话框。要调用该对话框,请选择Tools | Options。从主菜单中选择选项,然后选择引擎 | 显示在结果“选项”对话框左侧的树中的Java Bridge。该对话框包括Java虚拟机模块位置选项,该选项使您可以指定Java虚拟机模块所需文件的路径。
2、使该类可用于脚本引擎。
为此,请将所需的类添加到项目的Java Bridge设置组的列表中。该组包含Java类列表,这些Java类的功能可通过JavaClasses对象和这些类的路径供脚本使用:
添加到Java Bridge选项中的类在脚本中可用作JavaClasses对象的子对象。特定类中定义的类型又是类节点的子对象。与类型相对应的对象提供对在此类型中定义的子类型,静态成员和构造函数的访问。所有可用的类、类型和类型成员都显示在“代码完成”窗口中:
要从脚本中调用特定方法,请使用以下语法:
JavaClasses.package.class.subclass.method(parameters)
作为参数传递的简单数据类型(例如字符串、整数、布尔值)将自动转换为适当的Java类的实例。仅当对象类型的参数是java.lang.Object的后代时才可以将其传递给Java Bridge。否则,将发生类型不匹配错误。
如您所见,包名和类名(以及子类名)必须由点分隔。另外,请注意,包名称中使用的点必须用下划线字符替换。
上面的语法使您只能调用Java类的静态成员。为了在脚本中使用非静态方法和属性,您应该首先通过调用类构造函数或创建新类实例的静态成员来创建所需类的实例。
注意:通常,Java构造函数的名称与其所属类的名称相同。一个类可以具有任意数量的构造函数,并且它们的名称相同。为了避免命名冲突,TestComplete将这些方法的名称更改为newInstance。因此,类构造函数将具有以下名称:newInstance, newInstance_2, newInstance_3,等等。
您可以以与其他对象相同的方式处理Java类的方法和属性返回的对象。某些值类型实例(例如数字和布尔值)是OLE兼容的,可以直接在脚本中使用。为了使字符串、小数、日期时间对象、枚举值和数组OLE-兼容,TestComplete增加了一个特殊的OleValue属性给他们。要使用结构和引用类型(字符串和数组除外),请使用它们的内部属性和成员。
通过JavaRuntime对象调用Java例程
对应于Java应用程序的所有进程对象都具有JavaRuntime方法,该方法提供对Windows进程中存在的Java虚拟机的访问。JavaRuntime方法返回的对象是所需Java虚拟机的java.lang.Runtime类的实例。该对象包含与java.lang.Runtime相同的属性和方法,以及TestComplete提供的特定属性。对象的JavaClasses属性提供对Java应用程序中定义的包和类的访问。
JavaRuntime.JavaClasses属性与JavaClasses对象相似,并且用于通过调用类成员JavaRuntime的语法类与使用JavaClasses对象时使用的语法相似:
Sys.Process("MyJavaApp").JavaRuntime.JavaClasses.package.class.subclass.method(parameters)
同样,要调用非静态方法或属性,您应该首先使用类构造函数或特殊的静态成员创建类实例。
JavaRuntime.JavaClasses与JavaClasses对象相比,该属性的优点在于,它使您可以创建应用程序类的实例,而不必将这些类添加到项目的Java Bridge选项中。
处理Java应用程序中发生的异常
TestComplete允许捕获和处理Java应用程序代码中发生的异常。您可以使用标准脚本语句来捕获这些异常,例如try…catch和其他。
TestComplete自动捕获在测试Java应用程序时发生的异常,并以以下格式返回其描述:
Exception Type: Exception Cause
例如,当被测Java应用程序检测到零-时,将发生以下异常java.lang.ArithmeticException: / by zero。
局限性
如果使用-verbose或-verbose:class命令行参数启动了测试的应用程序,则TestComplete无法访问Java对象的内部方法和属性。因此,如果您尝试访问Java对象的JavaVMCount或JavaVMVersion属性,并且使用这些命令行参数之一启动了经过测试的应用程序,则会发生错误。
本教程人内容就是这样了,希望对您有所帮助~您可以下载TestComplete试用版尝试一下,可以试一下文章使用的方法哦~
相关内容推荐:
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
文章转载自:本文将探讨如何使用 Spire.XLS for .NET 在 C# 程序中导入 Excel 数据到数据库以及导出数据库到 Excel 文件,实现数据在 Excel 和数据库之间无缝流转。
在本文中,我们将向您展示如何逐步执行此操作,告诉您什么是 SCORM,为什么需要使用它,并列出我们测试过的最佳 SCORM 转换工具之一——iSpring Suite。
本文主要介绍如何使用Kendo UI for Angular组件的ListView来构建带有图表的仪表板,欢迎下载新版控件体验!
在本文中,您将学习如何使用Spire.PDF for .NET在 C# 中向 PDF 文档添加页码。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢