You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Ranorex中不满足条件时跳过剩余测试用例?

在Ranorex中条件不满足时终止后续测试并标记结果

Ranorex里可以通过两种方式实现需求:无代码的可视化操作,或者代码模块的灵活控制,以下是具体实现方案:

一、无代码录制模块实现

适合不熟悉代码的场景,直接通过Ranorex Studio的可视化操作完成:

  1. 添加条件检查:在测试用例中插入Validate动作,检查目标条件(比如元素是否存在、文本是否匹配预期值)。
  2. 设置终止逻辑:
    • 在Validate动作的「On Failure」分支中,添加Stop Test Case动作(在「Test Actions」面板的「Test Suite」分类下)。
    • 选中Stop Test Case动作,在属性面板的「Test Case Status」中选择Failed(红色标记)或Passed(绿色标记)。
    • 若要终止整个测试套件而非单个用例,改用Stop Test Suite动作,同样设置对应的状态。

二、代码模块实现(C#/VB)

适合复杂条件判断场景,灵活性更高:
在代码模块中编写条件判断逻辑,一旦条件不满足,直接调用Ranorex API终止测试并标记状态:

C#示例

// 检查特定条件,比如目标元素是否存在(1000ms超时)
if (!repo.YourApp.TargetElementInfo.Exists(1000))
{
    // 在测试报告中添加自定义说明
    Report.Failure("前置条件未满足,终止后续测试执行");
    // 终止当前测试用例并标记为Failed
    TestCase.Current.Stop(TestCaseStatus.Failed);
    
    // 如果需要标记为Passed,替换为:
    // TestCase.Current.Stop(TestCaseStatus.Passed);
    
    // 若要终止整个测试套件,改用:
    // TestSuite.Current.Stop(TestSuiteStatus.Failed);
}

VB示例

' 检查特定条件,比如目标元素是否存在(1000ms超时)
If Not repo.YourApp.TargetElementInfo.Exists(1000) Then
    ' 在测试报告中添加自定义说明
    Report.Failure("前置条件未满足,终止后续测试执行")
    ' 终止当前测试用例并标记为Failed
    TestCase.Current.Stop(TestCaseStatus.Failed)
End If

关键注意事项

  • 条件判断要精准:优先使用Ranorex仓库元素的Exists()方法,或Validate.AttributeEqual()等官方验证方法,确保条件判断的可靠性。
  • 全局条件检查:如果是整个测试套件的前置条件,可把判断逻辑放在Test Suite Setup模块中,不满足时直接终止整个套件,避免执行无用的测试用例。
  • 报告可读性:调用Report.Failure或Report.Success添加自定义信息,能让测试报告更清晰,便于后续排查原因。

内容的提问来源于stack exchange,提问作者else42.de

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 03:55:14