testit-adapter-robotframework 2.1.6__tar.gz → 2.1.8__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of testit-adapter-robotframework might be problematic. Click here for more details.
- testit-adapter-robotframework-2.1.8/PKG-INFO +227 -0
- testit-adapter-robotframework-2.1.8/README.md +212 -0
- {testit-adapter-robotframework-2.1.6 → testit-adapter-robotframework-2.1.8}/setup.py +2 -2
- {testit-adapter-robotframework-2.1.6 → testit-adapter-robotframework-2.1.8}/src/testit_adapter_robotframework/TMSLibrary.py +2 -2
- {testit-adapter-robotframework-2.1.6 → testit-adapter-robotframework-2.1.8}/src/testit_adapter_robotframework/models.py +4 -0
- testit-adapter-robotframework-2.1.8/src/testit_adapter_robotframework.egg-info/PKG-INFO +227 -0
- testit-adapter-robotframework-2.1.8/src/testit_adapter_robotframework.egg-info/requires.txt +3 -0
- testit-adapter-robotframework-2.1.6/PKG-INFO +0 -313
- testit-adapter-robotframework-2.1.6/README.md +0 -298
- testit-adapter-robotframework-2.1.6/src/testit_adapter_robotframework.egg-info/PKG-INFO +0 -313
- testit-adapter-robotframework-2.1.6/src/testit_adapter_robotframework.egg-info/requires.txt +0 -3
- {testit-adapter-robotframework-2.1.6 → testit-adapter-robotframework-2.1.8}/setup.cfg +0 -0
- {testit-adapter-robotframework-2.1.6 → testit-adapter-robotframework-2.1.8}/src/testit_adapter_robotframework/__init__.py +0 -0
- {testit-adapter-robotframework-2.1.6 → testit-adapter-robotframework-2.1.8}/src/testit_adapter_robotframework/listeners.py +0 -0
- {testit-adapter-robotframework-2.1.6 → testit-adapter-robotframework-2.1.8}/src/testit_adapter_robotframework/utils.py +0 -0
- {testit-adapter-robotframework-2.1.6 → testit-adapter-robotframework-2.1.8}/src/testit_adapter_robotframework.egg-info/SOURCES.txt +0 -0
- {testit-adapter-robotframework-2.1.6 → testit-adapter-robotframework-2.1.8}/src/testit_adapter_robotframework.egg-info/dependency_links.txt +0 -0
- {testit-adapter-robotframework-2.1.6 → testit-adapter-robotframework-2.1.8}/src/testit_adapter_robotframework.egg-info/top_level.txt +0 -0
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: testit-adapter-robotframework
|
|
3
|
+
Version: 2.1.8
|
|
4
|
+
Summary: Robot Framework adapter for Test IT
|
|
5
|
+
Home-page: https://github.com/testit-tms/adapters-python/
|
|
6
|
+
Author: Integration team
|
|
7
|
+
Author-email: integrations@testit.software
|
|
8
|
+
License: Apache-2.0
|
|
9
|
+
Classifier: Programming Language :: Python :: 3
|
|
10
|
+
Classifier: Programming Language :: Python :: 3.6
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.7
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
14
|
+
Description-Content-Type: text/markdown
|
|
15
|
+
|
|
16
|
+
# Test IT TMS adapter for Robot Framework
|
|
17
|
+

|
|
18
|
+
|
|
19
|
+
## Getting Started
|
|
20
|
+
|
|
21
|
+
### Installation
|
|
22
|
+
```
|
|
23
|
+
pip install testit-adapter-robotframework
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Usage
|
|
27
|
+
|
|
28
|
+
### Configuration
|
|
29
|
+
|
|
30
|
+
| Description | Property | Environment variable | CLI argument |
|
|
31
|
+
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------|-----------------------------------|-------------------------------|
|
|
32
|
+
| Location of the TMS instance | url | TMS_URL | tmsUrl |
|
|
33
|
+
| API secret key [How to getting API secret key?](https://github.com/testit-tms/.github/tree/main/configuration#privatetoken) | privateToken | TMS_PRIVATE_TOKEN | tmsPrivateToken |
|
|
34
|
+
| ID of project in TMS instance [How to getting project ID?](https://github.com/testit-tms/.github/tree/main/configuration#projectid) | projectId | TMS_PROJECT_ID | tmsProjectId |
|
|
35
|
+
| ID of configuration in TMS instance [How to getting configuration ID?](https://github.com/testit-tms/.github/tree/main/configuration#configurationid) | configurationId | TMS_CONFIGURATION_ID | tmsConfigurationId |
|
|
36
|
+
| ID of the created test run in TMS instance.<br/>It's necessary for **adapterMode** 0 or 1 | testRunId | TMS_TEST_RUN_ID | tmsTestRunId |
|
|
37
|
+
| Parameter for specifying the name of test run in TMS instance (**It's optional**). If it is not provided, it is created automatically | testRunName | TMS_TEST_RUN_NAME | tmsTestRunName |
|
|
38
|
+
| Adapter mode. Default value - 0. The adapter supports following modes:<br/>0 - in this mode, the adapter filters tests by test run ID and configuration ID, and sends the results to the test run<br/>1 - in this mode, the adapter sends all results to the test run without filtering<br/>2 - in this mode, the adapter creates a new test run and sends results to the new test run | adapterMode | TMS_ADAPTER_MODE | tmsAdapterMode |
|
|
39
|
+
| It enables/disables certificate validation (**It's optional**). Default value - true | certValidation | TMS_CERT_VALIDATION | tmsCertValidation |
|
|
40
|
+
| Mode of automatic creation test cases (**It's optional**). Default value - false. The adapter supports following modes:<br/>true - in this mode, the adapter will create a test case linked to the created autotest (not to the updated autotest)<br/>false - in this mode, the adapter will not create a test case | automaticCreationTestCases | TMS_AUTOMATIC_CREATION_TEST_CASES | tmsAutomaticCreationTestCases |
|
|
41
|
+
| It enables debug mode (**It's optional**) | tmsProxy | TMS_PROXY | tmsProxy |
|
|
42
|
+
| Name of the configuration file If it is not provided, it is used default file name (**It's optional**) | - | TMS_CONFIG_FILE | tmsConfigFile |
|
|
43
|
+
|
|
44
|
+
#### File
|
|
45
|
+
|
|
46
|
+
Create **connection_config.ini** file in the root directory of the project:
|
|
47
|
+
```
|
|
48
|
+
[testit]
|
|
49
|
+
URL = URL
|
|
50
|
+
privateToken = USER_PRIVATE_TOKEN
|
|
51
|
+
projectId = PROJECT_ID
|
|
52
|
+
configurationId = CONFIGURATION_ID
|
|
53
|
+
testRunId = TEST_RUN_ID
|
|
54
|
+
testRunName = TEST_RUN_NAME
|
|
55
|
+
adapterMode = ADAPTER_MODE
|
|
56
|
+
certValidation = CERT_VALIDATION
|
|
57
|
+
automaticCreationTestCases = AUTOMATIC_CREATION_TEST_CASES
|
|
58
|
+
|
|
59
|
+
# This section are optional. It enables debug mode.
|
|
60
|
+
[debug]
|
|
61
|
+
tmsProxy = {"http": "http://localhost:8888", "https": "http://localhost:8888"}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
#### Examples
|
|
65
|
+
|
|
66
|
+
Launch with a connection_config.ini file in the root directory of the project:
|
|
67
|
+
|
|
68
|
+
```
|
|
69
|
+
$ robot -v testit TEST_DIRECTORY
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Launch with command-line parameters (parameters are case-insensitive):
|
|
73
|
+
|
|
74
|
+
```
|
|
75
|
+
$ robot -v testit -v tmsUrl:URL -v tmsPrivateToken:USER_PRIVATE_TOKEN -v tmsProjectId:PROJECT_ID -v tmsConfigurationId:CONFIGURATION_ID -v tmsTestRunId:TEST_RUN_ID -v tmsTestRunName:TEST_RUN_NAME -v tmsAdapterMode:ADAPTER_MODE -v tmsProxy:'{"http":"http://localhost:8888","https":"http://localhost:8888"}' -v tmsConfigFile:<optional file> -v tmsCertValidation:CERT_VALIDATION -v tmsAutomaticCreationTestCases:AUTOMATIC_CREATION_TEST_CASES TEST_DIRECTORY
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
If you want to enable debug mode then see [How to enable debug logging?](https://github.com/testit-tms/adapters-python/tree/main/testit-python-commons)
|
|
79
|
+
|
|
80
|
+
### Tags
|
|
81
|
+
|
|
82
|
+
Tags can be used to specify information about autotest. Tags are space sensitive, use only one space between words.
|
|
83
|
+
|
|
84
|
+
Description of tags:
|
|
85
|
+
- `testit.workItemsId` - linking an autotest to a test case
|
|
86
|
+
- `testit.displayName` - name of the autotest in the TMS system (default - name of test)
|
|
87
|
+
- `testit.externalId` - ID of the autotest within the project in the TMS system
|
|
88
|
+
- `testit.title` - title in the autotest card (default - name of test)
|
|
89
|
+
- `testit.description` - description in the autotest card (default - documentation of test)
|
|
90
|
+
- `testit.links` - links in the autotest card
|
|
91
|
+
- `testit.labels` - labels in the autotest card
|
|
92
|
+
- `testit.nameSpace` - directory in the TMS system (default - file's name of test)
|
|
93
|
+
- `testit.className` - subdirectory in the TMS system (default - class's name of test)
|
|
94
|
+
|
|
95
|
+
Description of methods:
|
|
96
|
+
- `Add Links` - links in the autotest result
|
|
97
|
+
- `Add Link` - add one link in the autotest result
|
|
98
|
+
- `Add Attachments` - uploading files in the autotest result
|
|
99
|
+
- `Add Attachment` - upload given content with given filename in the autotest result
|
|
100
|
+
- `Add Message` - information about autotest in the autotest result
|
|
101
|
+
|
|
102
|
+
### Parallel execution
|
|
103
|
+
|
|
104
|
+
You can also run your test in parallel with [Pabot](https://pabot.org/).
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
$ pabot --pabotlib -v testit <test directory>
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
All other settings are the same as for standard execution.
|
|
111
|
+
|
|
112
|
+
### Examples
|
|
113
|
+
|
|
114
|
+
```robotframework
|
|
115
|
+
*** Settings ***
|
|
116
|
+
Documentation Main Suite with examples
|
|
117
|
+
Library testit_adapter_robotframework.TMSLibrary
|
|
118
|
+
|
|
119
|
+
*** Variables ***
|
|
120
|
+
&{SIMPLE_LINK} url=http://google.com
|
|
121
|
+
&{FULL_LINK} url=http://google.co.uk title=Google type=Related description=just a link
|
|
122
|
+
|
|
123
|
+
@{LINKS} ${SIMPLE_LINK} ${FULL_LINK}
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
*** Test Cases ***
|
|
127
|
+
Simple Test
|
|
128
|
+
[Setup] Setup
|
|
129
|
+
Do Something
|
|
130
|
+
Do Another Thing
|
|
131
|
+
Log I'am a step
|
|
132
|
+
[Teardown] Teardown
|
|
133
|
+
|
|
134
|
+
Simple Test with link as variable
|
|
135
|
+
[Tags] testit.links:${SIMPLE_LINK}
|
|
136
|
+
[Setup] Setup
|
|
137
|
+
Do Something
|
|
138
|
+
Do Another Thing
|
|
139
|
+
Log I'am a step
|
|
140
|
+
[Teardown] Teardown
|
|
141
|
+
|
|
142
|
+
Simple Test with link as dict
|
|
143
|
+
[Tags] testit.links:${{{'url': 'http://google.com', 'type':'Issue'}}}
|
|
144
|
+
[Setup] Setup
|
|
145
|
+
Do Something
|
|
146
|
+
Do Another Thing
|
|
147
|
+
Log I'am a step
|
|
148
|
+
[Teardown] Teardown
|
|
149
|
+
|
|
150
|
+
Simple Test with WorkitemId as string
|
|
151
|
+
[Tags] testit.workitemsID:123
|
|
152
|
+
[Setup] Setup
|
|
153
|
+
Do Something
|
|
154
|
+
Do Another Thing
|
|
155
|
+
Log I'am a step
|
|
156
|
+
[Teardown] Teardown
|
|
157
|
+
|
|
158
|
+
Simple Test with WorkitemId as list
|
|
159
|
+
[Tags] testit.workitemsID:${{[123, '456']}}
|
|
160
|
+
[Setup] Setup
|
|
161
|
+
Do Something
|
|
162
|
+
Do Another Thing
|
|
163
|
+
Log I'am a step
|
|
164
|
+
[Teardown] Teardown
|
|
165
|
+
|
|
166
|
+
Simple Test with Title or Description or DisplayName with simple formatting
|
|
167
|
+
[Documentation] Tags are space sensitive, use only one space between words
|
|
168
|
+
[Tags] testit.displayName:This works testit.title:'This also works'
|
|
169
|
+
... testit.description:"This works too"
|
|
170
|
+
[Setup] Setup
|
|
171
|
+
Do Something
|
|
172
|
+
Do Another Thing
|
|
173
|
+
Log I'am a step
|
|
174
|
+
[Teardown] Teardown
|
|
175
|
+
|
|
176
|
+
Test With All Params
|
|
177
|
+
[Documentation] It's better to use this kind of formatting for different data types in tags
|
|
178
|
+
[Tags] testit.externalID:123 testit.title:${{'Different title'}} testit.displayName:${{'Different name'}}
|
|
179
|
+
... testit.description:${{'Different description'}} testit.workitemsID:${{[123, '456']}}
|
|
180
|
+
... testit.links:${{{'url': 'http://google.com', 'type':'Issue'}}} testit.labels:${{['smoke', 'lol']}}
|
|
181
|
+
[Setup] Setup
|
|
182
|
+
Log Something
|
|
183
|
+
Log Another
|
|
184
|
+
[Teardown] Teardown
|
|
185
|
+
|
|
186
|
+
Test With Add Link
|
|
187
|
+
[Setup] Setup
|
|
188
|
+
Do Something
|
|
189
|
+
Do Another Thing
|
|
190
|
+
Add Links @{LINKS}
|
|
191
|
+
# You can also add one link (default type is Defect)
|
|
192
|
+
Add Link http://ya.ru
|
|
193
|
+
Add Link http://ya.ru type=Issue
|
|
194
|
+
Add Link ${SIMPLE_LINK}[url]
|
|
195
|
+
[Teardown] Teardown
|
|
196
|
+
|
|
197
|
+
Test With Add Attachment
|
|
198
|
+
[Setup] Setup
|
|
199
|
+
Do Something
|
|
200
|
+
Do Another Thing
|
|
201
|
+
${V} Get Variables
|
|
202
|
+
Add Attachment '${V}' file.txt
|
|
203
|
+
Add Attachments images/banner.png images/icon.png
|
|
204
|
+
[Teardown] Teardown
|
|
205
|
+
|
|
206
|
+
Test With Add Message
|
|
207
|
+
[Setup] Setup
|
|
208
|
+
Do Something
|
|
209
|
+
Do Another Thing
|
|
210
|
+
Add Message Wow, it's my error message!
|
|
211
|
+
Fail
|
|
212
|
+
[Teardown] Teardown
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
# Contributing
|
|
216
|
+
|
|
217
|
+
You can help to develop the project. Any contributions are **greatly appreciated**.
|
|
218
|
+
|
|
219
|
+
* If you have suggestions for adding or removing projects, feel free to [open an issue](https://github.com/testit-tms/adapters-python/issues/new) to discuss it, or directly create a pull request after you edit the *README.md* file with necessary changes.
|
|
220
|
+
* Please make sure you check your spelling and grammar.
|
|
221
|
+
* Create individual PR for each suggestion.
|
|
222
|
+
* Please also read through the [Code Of Conduct](https://github.com/testit-tms/adapters-python/blob/master/CODE_OF_CONDUCT.md) before posting your first idea as well.
|
|
223
|
+
|
|
224
|
+
# License
|
|
225
|
+
|
|
226
|
+
Distributed under the Apache-2.0 License. See [LICENSE](https://github.com/testit-tms/adapters-python/blob/master/LICENSE.md) for more information.
|
|
227
|
+
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
# Test IT TMS adapter for Robot Framework
|
|
2
|
+

|
|
3
|
+
|
|
4
|
+
## Getting Started
|
|
5
|
+
|
|
6
|
+
### Installation
|
|
7
|
+
```
|
|
8
|
+
pip install testit-adapter-robotframework
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Usage
|
|
12
|
+
|
|
13
|
+
### Configuration
|
|
14
|
+
|
|
15
|
+
| Description | Property | Environment variable | CLI argument |
|
|
16
|
+
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------|-----------------------------------|-------------------------------|
|
|
17
|
+
| Location of the TMS instance | url | TMS_URL | tmsUrl |
|
|
18
|
+
| API secret key [How to getting API secret key?](https://github.com/testit-tms/.github/tree/main/configuration#privatetoken) | privateToken | TMS_PRIVATE_TOKEN | tmsPrivateToken |
|
|
19
|
+
| ID of project in TMS instance [How to getting project ID?](https://github.com/testit-tms/.github/tree/main/configuration#projectid) | projectId | TMS_PROJECT_ID | tmsProjectId |
|
|
20
|
+
| ID of configuration in TMS instance [How to getting configuration ID?](https://github.com/testit-tms/.github/tree/main/configuration#configurationid) | configurationId | TMS_CONFIGURATION_ID | tmsConfigurationId |
|
|
21
|
+
| ID of the created test run in TMS instance.<br/>It's necessary for **adapterMode** 0 or 1 | testRunId | TMS_TEST_RUN_ID | tmsTestRunId |
|
|
22
|
+
| Parameter for specifying the name of test run in TMS instance (**It's optional**). If it is not provided, it is created automatically | testRunName | TMS_TEST_RUN_NAME | tmsTestRunName |
|
|
23
|
+
| Adapter mode. Default value - 0. The adapter supports following modes:<br/>0 - in this mode, the adapter filters tests by test run ID and configuration ID, and sends the results to the test run<br/>1 - in this mode, the adapter sends all results to the test run without filtering<br/>2 - in this mode, the adapter creates a new test run and sends results to the new test run | adapterMode | TMS_ADAPTER_MODE | tmsAdapterMode |
|
|
24
|
+
| It enables/disables certificate validation (**It's optional**). Default value - true | certValidation | TMS_CERT_VALIDATION | tmsCertValidation |
|
|
25
|
+
| Mode of automatic creation test cases (**It's optional**). Default value - false. The adapter supports following modes:<br/>true - in this mode, the adapter will create a test case linked to the created autotest (not to the updated autotest)<br/>false - in this mode, the adapter will not create a test case | automaticCreationTestCases | TMS_AUTOMATIC_CREATION_TEST_CASES | tmsAutomaticCreationTestCases |
|
|
26
|
+
| It enables debug mode (**It's optional**) | tmsProxy | TMS_PROXY | tmsProxy |
|
|
27
|
+
| Name of the configuration file If it is not provided, it is used default file name (**It's optional**) | - | TMS_CONFIG_FILE | tmsConfigFile |
|
|
28
|
+
|
|
29
|
+
#### File
|
|
30
|
+
|
|
31
|
+
Create **connection_config.ini** file in the root directory of the project:
|
|
32
|
+
```
|
|
33
|
+
[testit]
|
|
34
|
+
URL = URL
|
|
35
|
+
privateToken = USER_PRIVATE_TOKEN
|
|
36
|
+
projectId = PROJECT_ID
|
|
37
|
+
configurationId = CONFIGURATION_ID
|
|
38
|
+
testRunId = TEST_RUN_ID
|
|
39
|
+
testRunName = TEST_RUN_NAME
|
|
40
|
+
adapterMode = ADAPTER_MODE
|
|
41
|
+
certValidation = CERT_VALIDATION
|
|
42
|
+
automaticCreationTestCases = AUTOMATIC_CREATION_TEST_CASES
|
|
43
|
+
|
|
44
|
+
# This section are optional. It enables debug mode.
|
|
45
|
+
[debug]
|
|
46
|
+
tmsProxy = {"http": "http://localhost:8888", "https": "http://localhost:8888"}
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
#### Examples
|
|
50
|
+
|
|
51
|
+
Launch with a connection_config.ini file in the root directory of the project:
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
$ robot -v testit TEST_DIRECTORY
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Launch with command-line parameters (parameters are case-insensitive):
|
|
58
|
+
|
|
59
|
+
```
|
|
60
|
+
$ robot -v testit -v tmsUrl:URL -v tmsPrivateToken:USER_PRIVATE_TOKEN -v tmsProjectId:PROJECT_ID -v tmsConfigurationId:CONFIGURATION_ID -v tmsTestRunId:TEST_RUN_ID -v tmsTestRunName:TEST_RUN_NAME -v tmsAdapterMode:ADAPTER_MODE -v tmsProxy:'{"http":"http://localhost:8888","https":"http://localhost:8888"}' -v tmsConfigFile:<optional file> -v tmsCertValidation:CERT_VALIDATION -v tmsAutomaticCreationTestCases:AUTOMATIC_CREATION_TEST_CASES TEST_DIRECTORY
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
If you want to enable debug mode then see [How to enable debug logging?](https://github.com/testit-tms/adapters-python/tree/main/testit-python-commons)
|
|
64
|
+
|
|
65
|
+
### Tags
|
|
66
|
+
|
|
67
|
+
Tags can be used to specify information about autotest. Tags are space sensitive, use only one space between words.
|
|
68
|
+
|
|
69
|
+
Description of tags:
|
|
70
|
+
- `testit.workItemsId` - linking an autotest to a test case
|
|
71
|
+
- `testit.displayName` - name of the autotest in the TMS system (default - name of test)
|
|
72
|
+
- `testit.externalId` - ID of the autotest within the project in the TMS system
|
|
73
|
+
- `testit.title` - title in the autotest card (default - name of test)
|
|
74
|
+
- `testit.description` - description in the autotest card (default - documentation of test)
|
|
75
|
+
- `testit.links` - links in the autotest card
|
|
76
|
+
- `testit.labels` - labels in the autotest card
|
|
77
|
+
- `testit.nameSpace` - directory in the TMS system (default - file's name of test)
|
|
78
|
+
- `testit.className` - subdirectory in the TMS system (default - class's name of test)
|
|
79
|
+
|
|
80
|
+
Description of methods:
|
|
81
|
+
- `Add Links` - links in the autotest result
|
|
82
|
+
- `Add Link` - add one link in the autotest result
|
|
83
|
+
- `Add Attachments` - uploading files in the autotest result
|
|
84
|
+
- `Add Attachment` - upload given content with given filename in the autotest result
|
|
85
|
+
- `Add Message` - information about autotest in the autotest result
|
|
86
|
+
|
|
87
|
+
### Parallel execution
|
|
88
|
+
|
|
89
|
+
You can also run your test in parallel with [Pabot](https://pabot.org/).
|
|
90
|
+
|
|
91
|
+
```
|
|
92
|
+
$ pabot --pabotlib -v testit <test directory>
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
All other settings are the same as for standard execution.
|
|
96
|
+
|
|
97
|
+
### Examples
|
|
98
|
+
|
|
99
|
+
```robotframework
|
|
100
|
+
*** Settings ***
|
|
101
|
+
Documentation Main Suite with examples
|
|
102
|
+
Library testit_adapter_robotframework.TMSLibrary
|
|
103
|
+
|
|
104
|
+
*** Variables ***
|
|
105
|
+
&{SIMPLE_LINK} url=http://google.com
|
|
106
|
+
&{FULL_LINK} url=http://google.co.uk title=Google type=Related description=just a link
|
|
107
|
+
|
|
108
|
+
@{LINKS} ${SIMPLE_LINK} ${FULL_LINK}
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
*** Test Cases ***
|
|
112
|
+
Simple Test
|
|
113
|
+
[Setup] Setup
|
|
114
|
+
Do Something
|
|
115
|
+
Do Another Thing
|
|
116
|
+
Log I'am a step
|
|
117
|
+
[Teardown] Teardown
|
|
118
|
+
|
|
119
|
+
Simple Test with link as variable
|
|
120
|
+
[Tags] testit.links:${SIMPLE_LINK}
|
|
121
|
+
[Setup] Setup
|
|
122
|
+
Do Something
|
|
123
|
+
Do Another Thing
|
|
124
|
+
Log I'am a step
|
|
125
|
+
[Teardown] Teardown
|
|
126
|
+
|
|
127
|
+
Simple Test with link as dict
|
|
128
|
+
[Tags] testit.links:${{{'url': 'http://google.com', 'type':'Issue'}}}
|
|
129
|
+
[Setup] Setup
|
|
130
|
+
Do Something
|
|
131
|
+
Do Another Thing
|
|
132
|
+
Log I'am a step
|
|
133
|
+
[Teardown] Teardown
|
|
134
|
+
|
|
135
|
+
Simple Test with WorkitemId as string
|
|
136
|
+
[Tags] testit.workitemsID:123
|
|
137
|
+
[Setup] Setup
|
|
138
|
+
Do Something
|
|
139
|
+
Do Another Thing
|
|
140
|
+
Log I'am a step
|
|
141
|
+
[Teardown] Teardown
|
|
142
|
+
|
|
143
|
+
Simple Test with WorkitemId as list
|
|
144
|
+
[Tags] testit.workitemsID:${{[123, '456']}}
|
|
145
|
+
[Setup] Setup
|
|
146
|
+
Do Something
|
|
147
|
+
Do Another Thing
|
|
148
|
+
Log I'am a step
|
|
149
|
+
[Teardown] Teardown
|
|
150
|
+
|
|
151
|
+
Simple Test with Title or Description or DisplayName with simple formatting
|
|
152
|
+
[Documentation] Tags are space sensitive, use only one space between words
|
|
153
|
+
[Tags] testit.displayName:This works testit.title:'This also works'
|
|
154
|
+
... testit.description:"This works too"
|
|
155
|
+
[Setup] Setup
|
|
156
|
+
Do Something
|
|
157
|
+
Do Another Thing
|
|
158
|
+
Log I'am a step
|
|
159
|
+
[Teardown] Teardown
|
|
160
|
+
|
|
161
|
+
Test With All Params
|
|
162
|
+
[Documentation] It's better to use this kind of formatting for different data types in tags
|
|
163
|
+
[Tags] testit.externalID:123 testit.title:${{'Different title'}} testit.displayName:${{'Different name'}}
|
|
164
|
+
... testit.description:${{'Different description'}} testit.workitemsID:${{[123, '456']}}
|
|
165
|
+
... testit.links:${{{'url': 'http://google.com', 'type':'Issue'}}} testit.labels:${{['smoke', 'lol']}}
|
|
166
|
+
[Setup] Setup
|
|
167
|
+
Log Something
|
|
168
|
+
Log Another
|
|
169
|
+
[Teardown] Teardown
|
|
170
|
+
|
|
171
|
+
Test With Add Link
|
|
172
|
+
[Setup] Setup
|
|
173
|
+
Do Something
|
|
174
|
+
Do Another Thing
|
|
175
|
+
Add Links @{LINKS}
|
|
176
|
+
# You can also add one link (default type is Defect)
|
|
177
|
+
Add Link http://ya.ru
|
|
178
|
+
Add Link http://ya.ru type=Issue
|
|
179
|
+
Add Link ${SIMPLE_LINK}[url]
|
|
180
|
+
[Teardown] Teardown
|
|
181
|
+
|
|
182
|
+
Test With Add Attachment
|
|
183
|
+
[Setup] Setup
|
|
184
|
+
Do Something
|
|
185
|
+
Do Another Thing
|
|
186
|
+
${V} Get Variables
|
|
187
|
+
Add Attachment '${V}' file.txt
|
|
188
|
+
Add Attachments images/banner.png images/icon.png
|
|
189
|
+
[Teardown] Teardown
|
|
190
|
+
|
|
191
|
+
Test With Add Message
|
|
192
|
+
[Setup] Setup
|
|
193
|
+
Do Something
|
|
194
|
+
Do Another Thing
|
|
195
|
+
Add Message Wow, it's my error message!
|
|
196
|
+
Fail
|
|
197
|
+
[Teardown] Teardown
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
# Contributing
|
|
201
|
+
|
|
202
|
+
You can help to develop the project. Any contributions are **greatly appreciated**.
|
|
203
|
+
|
|
204
|
+
* If you have suggestions for adding or removing projects, feel free to [open an issue](https://github.com/testit-tms/adapters-python/issues/new) to discuss it, or directly create a pull request after you edit the *README.md* file with necessary changes.
|
|
205
|
+
* Please make sure you check your spelling and grammar.
|
|
206
|
+
* Create individual PR for each suggestion.
|
|
207
|
+
* Please also read through the [Code Of Conduct](https://github.com/testit-tms/adapters-python/blob/master/CODE_OF_CONDUCT.md) before posting your first idea as well.
|
|
208
|
+
|
|
209
|
+
# License
|
|
210
|
+
|
|
211
|
+
Distributed under the Apache-2.0 License. See [LICENSE](https://github.com/testit-tms/adapters-python/blob/master/LICENSE.md) for more information.
|
|
212
|
+
|
|
@@ -2,7 +2,7 @@ from setuptools import find_packages, setup
|
|
|
2
2
|
|
|
3
3
|
setup(
|
|
4
4
|
name='testit-adapter-robotframework',
|
|
5
|
-
version='2.1.
|
|
5
|
+
version='2.1.8',
|
|
6
6
|
description='Robot Framework adapter for Test IT',
|
|
7
7
|
long_description=open('README.md', "r").read(),
|
|
8
8
|
long_description_content_type="text/markdown",
|
|
@@ -20,5 +20,5 @@ setup(
|
|
|
20
20
|
py_modules=['testit_adapter_robotframework'],
|
|
21
21
|
packages=find_packages(where='src'),
|
|
22
22
|
package_dir={'': 'src'},
|
|
23
|
-
install_requires=['attrs', 'robotframework', 'testit-python-commons==2.1.
|
|
23
|
+
install_requires=['attrs', 'robotframework', 'testit-python-commons==2.1.8']
|
|
24
24
|
)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from robot.libraries.BuiltIn import BuiltIn
|
|
2
2
|
|
|
3
|
-
from testit_python_commons.services import
|
|
3
|
+
from testit_python_commons.services import TmsPluginManager
|
|
4
4
|
|
|
5
5
|
from .listeners import AutotestAdapter, TestRunAdapter
|
|
6
6
|
from .models import Link, Option
|
|
@@ -44,7 +44,7 @@ class TMSLibrary:
|
|
|
44
44
|
"tmsConfigurationId", "tmsTestRunId", "tmsTestRunName",
|
|
45
45
|
"tmsAdapterMode", "tmsConfigFile", "tmsCertValidation", "tmsAutomaticCreationTestCases"]
|
|
46
46
|
option = Option(**{param: built_in.get_variable_value(f'${{{param}}}', None) for param in cli_params})
|
|
47
|
-
self.adapter_manager =
|
|
47
|
+
self.adapter_manager = TmsPluginManager.get_adapter_manager(option)
|
|
48
48
|
pabot_index = built_in.get_variable_value('${PABOTQUEUEINDEX}', None)
|
|
49
49
|
if pabot_index is not None:
|
|
50
50
|
try:
|
|
@@ -141,6 +141,10 @@ class Autotest(Default):
|
|
|
141
141
|
self.labels.append(Label(value))
|
|
142
142
|
elif isinstance(value, list):
|
|
143
143
|
self.labels.extend([Label(item) for item in value if isinstance(item, (str, int))])
|
|
144
|
+
elif attr == 'namespace':
|
|
145
|
+
self.namespace = str(value).replace("'", "").replace('"', '')
|
|
146
|
+
elif attr == 'classname':
|
|
147
|
+
self.classname = str(value).replace("'", "").replace('"', '')
|
|
144
148
|
else:
|
|
145
149
|
logger.error(f"[TestIt] Unknown attribute: {attr}")
|
|
146
150
|
if not self.externalID:
|