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