API 覆盖率结果包含在 HTML、PDF 和 XML 报告中。 

HTML 和 PDF 报告

为启用 API 覆盖率的测试运行生成的 HTML 和 PDF 报告将包括一个 API 覆盖率部分,该部分显示针对服务定义的 API 覆盖率。它们详述了每个可用资源和操作实现的覆盖率级别,以及该覆盖率测试通过或测试失败的状态。它们还准确描述了 .tst 和测试覆盖的每个操作(在该级别也有一个通过/失败状态)。

可覆盖的资源列的初始视图显示每个已知的“可覆盖资源”,该资源是服务定义(RAML、OpenAPI/Swagger、WADL、WSDL)。 

成功 / 合计列指示测试调用可覆盖资源(服务、特定的 REST 资源/方法或 SOAP 方法等)的次数,以及这些测试中有多少真正成功。

覆盖率列指示被调用的资源数目与资源总数。不映射到任何服务定义的资源列在“未知服务”下。图形化的覆盖率栏显示了整个覆盖率(条形图中有色部分的总长度),以及实现该覆盖率的测试的通过/失败分解。

该表包含多个层级。覆盖率是为整个服务以及每个资源/方法和操作计算的。当在浏览器中查看 HTML 报告时,可以折叠和展开树分支。 

如果想查看是什么 .tst 和特定测试覆盖了某个方法,请深入树结构,然后点击显示测试链接。若要快速展开和折叠,可以使用报告左上角的全部展开 / 全部折叠链接。


注意,只有在首选项> 报告中禁用掉只有顶层的测试套件报告选项后才会显示测试用例。


XML 报告 

为启用 API 覆盖率的测试运行生成的 XML 报告将包括一个 API 覆盖率部分,该部分报告针对服务定义的 API 覆盖率。 

报告包含一个 APICoverage 元素,其中包括可覆盖的服务定义列表。对于执行过程中测试期间涉及的每个操作,都将有一个 test-ref 元素列表。每个 test-ref id 指示覆盖操作的测试。

下面是 XML 报告的 API 覆盖部分的一个非常简单的例子:


<APICoverage>
   <service definition-uri="http://machine:8080/petstore.yaml" type="REST">
     <resource id="/pets-multipart/{petId}">
       <operation name="POST" />
     </resource>
     <resource id="/pets-urlencode/{petId}">
       <operation name="POST" />
     </resource>
   </service>
   <service type="Unknown Service">
     <resource id="http://ws1.parasoft.com:8080/examples/servlets/Echo/v2/pets-multipart/">
       <operation name="POST">
           <test-ref id="wk:///TestAssets/Diff3 Swagger.tst#01#02#03" />
       </operation>
     </resource>
     <resource id="http://ws1.parasoft.com:8080/examples/servlets/Echo/v2/pets-urlencode/">
       <operation name="POST">
           <test-ref id="wk:///TestAssets/Diff3 Swagger.tst#00#01#04#05" />
       </operation>
     </resource>
   </service>    
</APICoverage>
  • No labels