2

我的测试团队目前使用 QTP 通过 GUI 进行测试,但与任何依赖接口的自动化测试套件一样,它比直接与代码交互的自动化测试更脆弱。我正在尝试了解有关 Siebel 和 Siebel Tools 的更多信息,以更好地了解我们如何能够在 GUI 下进行测试,但希望听取具有更多专业知识的人的意见,以了解这是否可行。

4

4 回答 4

0

我猜这真的取决于你想测试什么。

我经常使用 Siebel Java Data Bean (JDB) 来访问 Siebel。您基本上连接到 Siebel 服务器并执行与 eScript 非常相似的代码。这意味着您可以创建记录、调用工作流等等;基本上你可以在 eScript 中做的所有事情。这可能会有所帮助。这将应用所有常见的验证、运行时事件和事件。

一旦您在 BusComps 或 Business Services 或其他地方的某些脚本访问需要 UI 上下文(TheApplication().ActiveBusObject()TheApplication().ActiveApplet()例如)的数据,这种方法就会失败,因为 Siebel 数据 Bean 没有 UI 上下文。

另一个缺点是您必须连接到 Siebel 服务器。这意味着您必须将 SRF 部署到开发服务器,然后才能运行测试。如果 JDB 可以连接到您的本地实例,那肯定会好得多,但据我所知,这是不可能的。不过,请查看 Bookshelf 中的 Object Interfaces 指南。有多种方法可以连接到 Siebel,而不仅仅是 Java。

如果您对此有任何疑问,请告诉我。我可能会发布一些关于如何连接到 Siebel 服务器等的示例代码。

于 2009-12-22T22:23:36.900 回答
0

由于 Siebel 版本 7.7 QTP 使用需要从 Oracle 单独购买的Siebel 测试自动化 (STA) ,因此快速搜索发现了有关如何使用 STA 设置测试的说明(这是从 QTP 角度编写的,但适用于所有 STA 使用)。

如果您真的想避免使用 GUI 测试,那么您可以查找 API 文档并尝试直接使用 STA,但我不推荐它,QTP 已经为您完成了所有繁重的工作,您为什么要重现该努力(特别是因为您的公司已经拥有 QTP 许可证)。

于 2009-12-23T08:11:59.420 回答
0

现在,QTP 是最好的方法——它仍然是 PITA,但实际上没有其他东西可以测试完整的 Siebel Web 客户端。这是因为 Siebel UI 是通过带有专有 Active X 和 Java 控件的 Internet Explorer 交付的,因此您确实需要一个定制的包来测试它。

因为 UI 是对业务对象层(通过 Data Beans / COM 等进行访问)的重新解释,而不仅仅是抽象,所以在该层进行测试是没有用的,除非在少数单元测试用例中(例如当您在 Siebel 中有复杂的脚本时)。

如果您将客户端的 URL 结尾(当然首先登录到 Siebel)更改为“SWEcmd=GotoPageTab&SWEScreen=Accounts+Screen&SWESetMarkup=XML”,那么您会看到大量 XML 标记,然后由专有控件 - 您可能认为这是构建自动化工具的一种很酷的方式,但事实并非如此(我已经尝试过)。

如果您想真正使用适当的 UI 测试工具,例如 Selenium,则必须测试 HTML Siebel Web 客户端 - 这是一个不使用 Active X 或 Java 的“瘦”“标准交互”UI ...它的 UI 控件少了很多,但它在完整的 Siebel Web 客户端(又名高交互性 Siebel Web 客户端,简称 HI)上的工作原理基本相同,并且在 Firefox 中也能工作!

于 2010-01-17T12:10:13.467 回答
0

您是否查看过Oracle 应用程序测试套件。它带有用于测试 Siebel 的预构建加速器,这使得测试 Siebel 变得更加容易。

于 2014-02-25T14:28:15.823 回答