当前位置: 首页 > 知识库问答 >
问题:

秦皇|在测试Ng侦听器中获取方案标记

燕寒
2023-03-14

我想在TestNg listener中获得场景标签细节,以帮助使用TestcaseId编写定制报告

 @priority:1 @TestcaseId:VFF-265 @IntId:615d440932e941018806cfc5  @sit-1 
 Scenario : Testing login is successfull

我目前实现的解决方案是在场景名称和使用结果中添加细节。在TestNg侦听器中获取TestName(),并从场景名称中分割细节。此实现的唯一问题是内部ID和TC ID可见,并使测试用例名称变长:

 @priority:1 @TestcaseId:VFF-265 @IntId:615d440932e941018806cfc5  @sit-1 
 Scenario : [VFF-265]_[615d440932e941018806cfc5]_Testing login is successfull

共有2个答案

邓鸿信
2023-03-14

结果。测试名称() 返回字符串。因此,您可以使用 java 方法选取最后一个下划线后的最后一个句子。您可以使用子字符串或从java拆分方法。

示例://演示split()公共类GFG工作的Java程序{

public static void main(String args[])
{
    String str = "GeeksforGeeks:A Computer Science Portal";
    String[] arrOfStr = str.split(":");
    for (String a : arrOfStr)
        System.out.println(a);
}

} https://www.geeksforgeeks.org/split-string-java-examples/

霍修筠
2023-03-14

当您将qaf与TestNG运行程序一起使用时,它将使用TestNGScenario作为ITestNGMethod实现。TestNGScenario是扩展的TestNGMethod,它具有加法方法getMetaData(),它将为您提供测试用例的元数据。来自testng的任何方法返回ITestNGMethodTestNGMethod都将返回TestNGScenario对象。下面是示例

public void onTestSuccess(ITestResult tr) {
    TestNGScenario scenario = (TestNGScenario) tr.getMethod();
    Map<String, Object> metadata = scenario.getMetaData()
}

如果您正在处理自定义报告,最好的方法是实现TestCaseResultUpdator。可以参考qaf内置记者和qaf-support-elasticsearch。

 类似资料:
  • 方法正在传递,这太好了,但是为什么的结果会出现在库测试结果中,我不明白。我怎么才能避免呢? 我在这里列出了和的完整代码。

  • 我使用Antlr4和C#Target。在我的语法中有一个简单的lexer规则如下

  • 我正在实现一个片段,该片段调用两个。

  • 我正在尝试学习python来处理一个测试项目。是否有一种方法可以在python测试框架中实现类似功能的TestNG侦听器。 侦听器有诸如OnTestFailure()、OnTestSuccess、OnStart()等方法,当您想要做某些事情时,这些方法非常有用。 比方说,一个测试用例失败了,您想执行一些操作,比如截图。然后你可以只在一个地方写,而不是在每个测试方法中都写。

  • 问题内容: 我使用的是Hibernate事件监听器,喜欢在插入,删除和更新期间执行一些操作。现在,我想使用JPA侦听器执行此操作,因为如果我想从Hibernate迁移到任何其他JPA提供程序,则我的侦听器应该可以工作。Hibernate侦听器为我提供了从中获取事务并检查其提交还是回滚的功能。JPA侦听器仅向我提供实体对象。现在如何在JPA侦听器中获取事务或会话或实体管理器?提前致谢!!我正在使用J