Project

General

Profile

Coverage format » History » Version 14

Viktoria Kopach, 10/06/2014 06:38 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 9 Denis Kildishev
  <reqcoverage qid="уникальный_идентификатор_требования_или_тестовой_ситуации">
12
    <covered_by uri="путь_к_покрывающему_элементу"/>
13
  </reqcoverage>
14 13 Viktoria Kopach
  <error [name="имя_ошибки"] testuri="uri_элемента_covered_by" [uri="ссылка_на_описание_ошибки"]>
15 10 Denis Kildishev
      [<violates qid="уникальный_идентификатор_требования_или_тестовой_ситуации"/>]*
16 11 Alexey Khoroshilov
      [<description [format="вид_описания_ошибки"]>описание_ошибки</description>]
17 9 Denis Kildishev
  </error>
18 2 Viktoria Kopach
</coverageInfo>
19
</pre>
20 1 Viktoria Kopach
21
Здесь:
22 8 Denis Kildishev
23 9 Denis Kildishev
Квадратными скобками обозначены опциональные параметры.
24 14 Viktoria Kopach
25
h2. coverageInfo
26
27
*coverageInfo* - может быть только один экземпляр в файле. Он содержит вложенные XML-элементы *reqcoverage* (один или несколько) и *error* (может не быть, может быть один или несколько).
28
29
h2. reqcoverage
30
31
Для каждого покрытого Requality-элемента должен быть свой XML-элемент *reqcoverage*. Непокрытые узлы не описываются вовсе.
32
*covered_by* - Каждый *reqcoverage* может содержать несколько XML-элементов *covered_by*, если его покрывают несколько тестовых процедур или тестов.
33
*hits* - Атрибут *hits* является опциональным, он указывает количество упоминаний этого требования в тесте.
34
35
h2. error
36
37 9 Denis Kildishev
Элемент *error* представляет собой ошибки полученные в результате выполнения тестов. Может содержать один элемент description с описанием ошибки. Может включать один или несколько элементов violates в ситуации когда можно определить какие именно требования нарушает ошибка.
38 3 Viktoria Kopach
39 5 Viktoria Kopach
*_уникальный_идентификатор_требования_или_тестовой_ситуации_* это user-visible-name(element) или qualifying-id(element) покрываемого элемента
40 1 Viktoria Kopach
41 5 Viktoria Kopach
* user-visible-name(element) - это имя элемента, если оно есть (то есть если поле name в Properties view у этого элемента не пустое),
42
иначе это user-visible-name(element.parent)/id, то есть сначала user-visible-name родительского элемента, потом id - идентификатор элемента (в качестве разделителя использовать ''/'').
43
Например: 
44 3 Viktoria Kopach
"TR-FMF-01-01-002/TR-FMF-01-01-002_T01"
45 1 Viktoria Kopach
46 5 Viktoria Kopach
* qualifying-id(element) - это полный путь к элементу, начиная с корневого элемента (Requirements), в качестве разделителя используется ''/''.
47
Например:
48
"Requirements/01/MyRequirement01"
49
50 1 Viktoria Kopach
*_путь_к_покрывающему_элементу_*
51
* если описывается покрытие тестовых ситуаций тестовыми процедурами, то это путь к шагу тестовой процедуры.
52 6 Viktoria Kopach
** Если тестовая процедура находится в том же проекте, то путь записывается без протокола, например:
53 1 Viktoria Kopach
"/TestProcedures/01/TestStep04"
54
Здесь 01 - идентификатор тестовой процедуры, 04 - номер шага тестовой процедуры.
55 6 Viktoria Kopach
** Если тестовая процедура находится в другом проекте Requality, то путь записывается следующим образом:
56
"requality://ProjectName/TestProcedures/01/TestStep04"
57
Здесь ProjectName - имя проекта, где находится тестовая процедура.
58 1 Viktoria Kopach
59 6 Viktoria Kopach
* если описывается покрытие тестовых ситуаций тестами, то это путь к тесту, например:
60 2 Viktoria Kopach
"file:///home/user/work/test1.c#12"
61 1 Viktoria Kopach
62
*имя_ошибки* - опциональный параметр, представляет собой отображаемое имя ошибки. В случае если не определен, используется имя "error"+порядковый_номер_ошибки. 
63
64 13 Viktoria Kopach
*uri_элемента_covered_by* - путь к одному из тестов, описанному в covered_by элементе
65 10 Denis Kildishev
66 11 Alexey Khoroshilov
*ссылка_на_описание_ошибки* - опциональный параметр, путь к файлу с подробной информацией об ошибке
67 9 Denis Kildishev
68
*уникальный_идентификатор_требования_или_тестовой_ситуации* - путь к требованию или тестовой ситуации, соответствующий *qualifying-id(element)*
69
70
*format="вид_описания_ошибки"* - формат описания ошибки, есть два возможных представления, соответвующих "вид_описания_ошибки" - представление в формате html или plain соответствующий тексту без форматирования. Для последнего варианта все html теги будут отображаться в виде текста.
71
72
*описание_ошибки* представляет собой описание ошибки, при этом для формата html допускается использование html тегов для форматирования текста.
73
74 2 Viktoria Kopach
Пример описания покрытия тестовыми процедурами:
75
76
<pre>
77
<?xml version="1.0" encoding="UTF-8"?>
78 1 Viktoria Kopach
  <coverageInfo>
79 2 Viktoria Kopach
    <reqcoverage qid="TR-FMF-01-01-001/TR-FMF-01-01-001_T02">
80 9 Denis Kildishev
      <covered_by uri="/TestProcedures/01/TestStep05" hits="1"/>
81 2 Viktoria Kopach
    </reqcoverage>
82 1 Viktoria Kopach
    <reqcoverage qid="TR-FMF-01-01-001/TR-FMF-01-01-001_T01">
83 9 Denis Kildishev
      <covered_by uri="/TestProcedures/01/TestStep03" hits="1"/>
84 1 Viktoria Kopach
    </reqcoverage>
85 2 Viktoria Kopach
    <reqcoverage qid="TR-FMF-01-01-001">
86 9 Denis Kildishev
      <covered_by uri="/TestProcedures/01/TestStep01" hits="1"/>
87 2 Viktoria Kopach
    </reqcoverage>
88
    <reqcoverage qid="TR-FMF-01-01-002/TR-FMF-01-01-002_T01">
89 9 Denis Kildishev
      <covered_by uri="/TestProcedures/01/TestStep02" hits="1"/>
90 2 Viktoria Kopach
    </reqcoverage>
91
    <reqcoverage qid="TR-FMF-01-01-006">
92 9 Denis Kildishev
      <covered_by uri="/TestProcedures/01/TestStep04" hits="1"/>
93 2 Viktoria Kopach
    </reqcoverage>
94 1 Viktoria Kopach
  </coverageInfo>
95
</pre>