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

将TestNg报告上载到S3

邴修远
2023-03-14

我目前正在研究在测试套件执行后根据testng XML中的参数将testng报告上传到Amazon S3的能力。考虑以下testng XML:

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >

<suite name="Base Framework Unit Test Suite" verbose="1" >
    <parameter name="upload-test-reports" value="true" />
    <parameter name="aws-provider-type" value="profile" />
    <parameter name="aws-s3-bucket" value="qa-reports" />
    <parameter name="target-reports-directory" value="TestProduct/Sprint1" />

    <test name="Test-base-built Unit Tests" >
        <parameter name="test-run-type" value="local" />
        <parameter name="name" value="Test-base-built Unit Tests" />
        <parameter name="browser" value="htmlunitwithjs" />
        <groups>
            <run>
                <include name="unittest" />
            </run>
        </groups>
        <classes>
            <class name="unittest.TestBaseBuilt_Test" />
        </classes>
    </test>

</suite>

给定前四个参数(upload-test-reports、aws-provider-type、aws-s3-bucket和target-reports-directory),Java项目将把默认测试输出目录(当前为/build/reports/tests)中的所有文件上传到S3。

现在,上传部分对我来说很好。问题是它总是上传上次测试运行中的文件。我尝试创建一个testng侦听器,扩展TestListenerAdapter,并将上传逻辑放在onFinish方法中。那不起作用;它在当前运行的报告生成之前上载。我还尝试编写一个自定义testng报告器,实现IReporter并将上传逻辑放在generateReport方法中。相同的结果;它在当前运行的报告生成之前上载。

那么,有没有testng专家知道我可以把我的文件上传逻辑放在哪里,以便在testng实际生成报告文件后执行它?

任何帮助都是非常感谢的!

暂时还没有答案

 类似资料:
  • 在代码正确添加一段时间以后,即可在系统中查看到网站数据。 系统报告呈现的数据,可依维度(网站分析的角度)与指标(数值化衡量维度)进行解读。 报告时间只可选择历史数据,或者实时数据。 例:如今天是2017/02/22,则只可选择2017/02/22当天,或历史任意一段时间。 2.3.1 默认报告下载 用户可以再系统查看默认报告界面点击箭头下载报告。 用户可以通过上方筛选维度/指标/设备/日期再下载。

  • 我正在从. jasper文件加载jasper报告文件以提高性能,如下所示。 但是我现在有一个要求,动态形成的查询必须设置为. jasper(编译)文件。有没有办法做同样的事情?

  • 问题内容: 目前,我正在以这种方式拍摄测试失败的屏幕截图: 我可以将自己的屏幕截图包含在TestNG报告链接或图片中吗?如果是,怎么办? 我在网上发现的只是FEST框架。但是由于我已经在截屏了,所以我不想使用其他框架。 问题答案: 是的,您可以在testng报告中包含指向屏幕截图的链接。 您需要通过使用@Listeners({yourListener.class})注释您的测试类或所有测试类的父级

  • 问题内容: 目前,我正在以这种方式拍摄测试失败的屏幕截图: 我可以将自己的屏幕截图包含在TestNG报告链接或图片中吗?如果是,怎么办? 我在网上发现的只是FEST框架。但是由于我已经在截屏了,所以我不想使用其他框架。 问题答案: 是的,您可以在testng报告中包含指向屏幕截图的链接。 您需要调用方法以通过@Listeners({yourListener.class})注释您的测试类或所有测试类

  • 22.13.7.1.TestNG 的参数化方法和报告 TestNG支持参数化方法,允许一个特定的测试方法使用不同的输入被执行多次。Gradle会在测试报告中包含该方法的参数值. 给出一个叫aTestMethod的测试方法,该方法有两个参数,在测试报告中会根据名字报告:aTestMethod(toStringValueOfParam1, toStringValueOfParam2). 这很容易识别的