2014-11-03 17 views
1

我正试图将这些功能合并到我的自动化脚本功能中,以防止在对象不存在时停止整个脚本发生Web对象错误。相反,脚本应该捕获错误并执行不同的功能,并继续运行其他脚本。处理对象在TestComlete中不存在错误使用Javascript

我第一次尝试TryCatch块,但后来我知道它看不到TestComplete本身产生的错误。我研究了可以通过该工具制作的事件处理程序,但它们似乎对我所需的解决方案没有任何意义。

这是一个例子,我正在尝试做什么。

function TestPage() { 
\\Some condition where it will only continue if no errors are raised 

    var testobj = Aliases.MappedName 
    testobj.Click 

    //more code 

//goes here if an error occurs at any point 
//executes a reset function. 
+0

为什么不将答复标记为答案?对我来说,它解决了这个完全相同的问题 - 请注意标记为答案将帮助其他与我们有类似问题的人。 – user3141326 2015-05-12 06:56:12

回答

3

我可以提出两种可能的方法,可以单独使用或一起使用。

  1. 您可以在尝试获取它之前检查对象是否存在。使用名称映射树时,可以在WaitAliasChildWaitMappedChild方法的帮助下完成此操作。如果您知道某个对象在特定测试步骤中可能丢失,则此方法是最好的。

  2. 您可以处理OnLogError事件,以便处理您想要的错误。使用这个处理程序,可以防止错误发布到测试日志中。此外,您可以禁用Stop on error项目选项,以防止TestComplete停止对错误进行测试,并使用Runner.Stop方法停止从OnLogError事件处理程序执行。如果您不知道哪个测试步骤可能会发生问题,则此方法有效。

个人而言,我更喜欢第一种方法,并将第二种情况视为我测试或测试应用程序中的问题。