Project

General

Profile

Coverage format » History » Version 7

Denis Kildishev, 07/16/2014 01:54 PM

1 2 Viktoria Kopach
h1. Формат файла с информацией о покрытии
2 1 Viktoria Kopach
3
Описывается на XML.
4
5 2 Viktoria Kopach
<pre>
6
<?xml version="1.0" encoding="UTF-8"?>
7
<coverageInfo> 
8
  <reqcoverage qid="уникальный_идентификатор_требования_или_тестовой_ситуации">
9 6 Viktoria Kopach
    <covered_by uri="путь_к_покрывающему_элементу" hits="1"/>
10 2 Viktoria Kopach
  </reqcoverage>
11
</coverageInfo>
12
</pre>
13
14 1 Viktoria Kopach
Здесь:
15
16 7 Denis Kildishev
Элемент *coverageInfos* только один и может содержать несколько элементов reqcoverage.
17 5 Viktoria Kopach
Для каждого покрытого узла должен быть свой элемент reqcoverage. Непокрытые узлы не описываются вовсе.
18
Элемент *reqcoverage* может содержать несколько элементов test path, если его покрывают несколько тестовых процедур или тестов.
19 6 Viktoria Kopach
Атрибут hits является опциональным, он указывает количество упоминаний этого требования в тесте.
20 3 Viktoria Kopach
21 5 Viktoria Kopach
*_уникальный_идентификатор_требования_или_тестовой_ситуации_* это user-visible-name(element) или qualifying-id(element) покрываемого элемента
22 1 Viktoria Kopach
23 5 Viktoria Kopach
* user-visible-name(element) - это имя элемента, если оно есть (то есть если поле name в Properties view у этого элемента не пустое),
24
иначе это user-visible-name(element.parent)/id, то есть сначала user-visible-name родительского элемента, потом id - идентификатор элемента (в качестве разделителя использовать ''/'').
25
Например: 
26 3 Viktoria Kopach
"TR-FMF-01-01-002/TR-FMF-01-01-002_T01"
27 1 Viktoria Kopach
28 5 Viktoria Kopach
* qualifying-id(element) - это полный путь к элементу, начиная с корневого элемента (Requirements), в качестве разделителя используется ''/''.
29
Например:
30
"Requirements/01/MyRequirement01"
31
32 1 Viktoria Kopach
*_путь_к_покрывающему_элементу_*
33
* если описывается покрытие тестовых ситуаций тестовыми процедурами, то это путь к шагу тестовой процедуры.
34 6 Viktoria Kopach
** Если тестовая процедура находится в том же проекте, то путь записывается без протокола, например:
35 1 Viktoria Kopach
"/TestProcedures/01/TestStep04"
36
Здесь 01 - идентификатор тестовой процедуры, 04 - номер шага тестовой процедуры.
37 6 Viktoria Kopach
** Если тестовая процедура находится в другом проекте Requality, то путь записывается следующим образом:
38
"requality://ProjectName/TestProcedures/01/TestStep04"
39
Здесь ProjectName - имя проекта, где находится тестовая процедура.
40 1 Viktoria Kopach
41 6 Viktoria Kopach
* если описывается покрытие тестовых ситуаций тестами, то это путь к тесту, например:
42
"file:///home/user/work/test1.c#12"
43 2 Viktoria Kopach
44
45
Пример описания покрытия тестовыми процедурами:
46
47
<pre>
48
<?xml version="1.0" encoding="UTF-8"?>
49
  <coverageInfo>
50
    <reqcoverage qid="TR-FMF-01-01-001/TR-FMF-01-01-001_T02">
51
      <test path="/TestProcedures/01/TestStep05" local="true" cnt="1"/>
52
    </reqcoverage>
53
    <reqcoverage qid="TR-FMF-01-01-001/TR-FMF-01-01-001_T01">
54
      <test path="/TestProcedures/01/TestStep03" local="true" cnt="1"/>
55
    </reqcoverage>
56
    <reqcoverage qid="TR-FMF-01-01-001">
57
      <test path="/TestProcedures/01/TestStep01" local="true" cnt="1"/>
58
    </reqcoverage>
59
    <reqcoverage qid="TR-FMF-01-01-002/TR-FMF-01-01-002_T01">
60
      <test path="/TestProcedures/01/TestStep02" local="true" cnt="1"/>
61
    </reqcoverage>
62
    <reqcoverage qid="TR-FMF-01-01-006">
63
      <test path="/TestProcedures/01/TestStep04" local="true" cnt="1"/>
64
    </reqcoverage>
65 1 Viktoria Kopach
  </coverageInfo>
66
</pre>