如何在uft中实现框架的错误处理功能

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在uft中实现框架的错误处理功能相关的知识,希望对你有一定的参考价值。

我在DB queries框架中运行UFT。在执行期间,如果在后端表中删除了数据,那么UFT将抛出错误消息框,如下所示。我想跳过错误并继续并在xml result sheet中报告错误描述。

错误信息:

运行错误:BOF或EOF为True,或者当前记录已被删除。请求的操作需要当前记录

我试图通过调用错误函数添加恢复方案,然后继续下一步。我的错误功能如下:

Function RecoveryFunction1(Object, Method, Arguments, retVal)
If err.number<>"" then
   error1=err.description
   Reporter.reportevent micwarning,"Error ocurred:","","Error Details: "&error1&"
End If
End Function

我在函数库中添加了上述函数,并在测试设置中关联了恢复场景。但仍然会出现错误消息。

请帮助我在运行时处理错误消息,而不是为'error resume next'语句中的每个函数写入。

答案

您需要更改请求数据库视图的方式,以便以后的修改或删除不会影响您的查询。

看看ADO Recordset的文档。它指定了不同的游标类型,其中一些允许您保持数据的静态视图,就像运行查询时一样,而其他类型则提供实时视图。我不确定哪一个最适合您的特定用例,因此您应该尝试并查看哪一个适合您。

如果做不到这一点,你可以尝试一种非常重要的方法,即在你选择之前开始使用database transaction,它应该将你的数据处理与任何外部变化隔离开来。但是,如果您的进程需要很长时间,那么这可能是不合需要的,因为它可能会锁定其他进程,直到您结束事务并在您正在查看的行上产生锁定。同样,它取决于您的特定数据库环境以及与之交互的系统。

以上是关于如何在uft中实现框架的错误处理功能的主要内容,如果未能解决你的问题,请参考以下文章

在片段中实现对话框时,必须在添加内容之前请求窗口功能

如何在android中实现下拉刷新?

在下面所述的代码中实现错误处理时需要帮助[重复]

如何使用原生崩溃报告在 Swift 4 中实现异常/错误处理?

从片段中获取意图值后,我如何在 recyclerview 项目中实现单击

如何使用对象列表在片段中实现newinstace模式[重复]