robotframework-schemathesislibrary 2.3.2__tar.gz → 2.4.0__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.
Files changed (13) hide show
  1. {robotframework_schemathesislibrary-2.3.2/src/robotframework_schemathesislibrary.egg-info → robotframework_schemathesislibrary-2.4.0}/PKG-INFO +26 -3
  2. {robotframework_schemathesislibrary-2.3.2 → robotframework_schemathesislibrary-2.4.0}/README.md +23 -0
  3. {robotframework_schemathesislibrary-2.3.2 → robotframework_schemathesislibrary-2.4.0}/pyproject.toml +11 -11
  4. {robotframework_schemathesislibrary-2.3.2 → robotframework_schemathesislibrary-2.4.0}/src/SchemathesisLibrary/__init__.py +1 -1
  5. {robotframework_schemathesislibrary-2.3.2 → robotframework_schemathesislibrary-2.4.0/src/robotframework_schemathesislibrary.egg-info}/PKG-INFO +26 -3
  6. robotframework_schemathesislibrary-2.4.0/src/robotframework_schemathesislibrary.egg-info/requires.txt +4 -0
  7. robotframework_schemathesislibrary-2.3.2/src/robotframework_schemathesislibrary.egg-info/requires.txt +0 -4
  8. {robotframework_schemathesislibrary-2.3.2 → robotframework_schemathesislibrary-2.4.0}/LICENSE +0 -0
  9. {robotframework_schemathesislibrary-2.3.2 → robotframework_schemathesislibrary-2.4.0}/setup.cfg +0 -0
  10. {robotframework_schemathesislibrary-2.3.2 → robotframework_schemathesislibrary-2.4.0}/src/SchemathesisLibrary/schemathesisreader.py +0 -0
  11. {robotframework_schemathesislibrary-2.3.2 → robotframework_schemathesislibrary-2.4.0}/src/robotframework_schemathesislibrary.egg-info/SOURCES.txt +0 -0
  12. {robotframework_schemathesislibrary-2.3.2 → robotframework_schemathesislibrary-2.4.0}/src/robotframework_schemathesislibrary.egg-info/dependency_links.txt +0 -0
  13. {robotframework_schemathesislibrary-2.3.2 → robotframework_schemathesislibrary-2.4.0}/src/robotframework_schemathesislibrary.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: robotframework-schemathesislibrary
3
- Version: 2.3.2
3
+ Version: 2.4.0
4
4
  Summary: Robot Framework SchemathesisLibrary to automatically create test cases from API specifications.
5
5
  Author-email: Tatu Aalto <aalto.tatu@gmail.com>
6
6
  License-Expression: Apache-2.0
@@ -10,8 +10,8 @@ Description-Content-Type: text/markdown
10
10
  License-File: LICENSE
11
11
  Requires-Dist: robotframework>=7.2.2
12
12
  Requires-Dist: robotframework-datadriver>=1.11.2
13
- Requires-Dist: robotframework-pythonlibcore>=4.5.0
14
- Requires-Dist: schemathesis>=4.17.0
13
+ Requires-Dist: robotframework-pythonlibcore>=4.6.0
14
+ Requires-Dist: schemathesis>=4.21.10
15
15
  Dynamic: license-file
16
16
 
17
17
  # Robot Framework SchemathesisLibrary
@@ -175,3 +175,26 @@ def filter_query(ctx, query) -> bool:
175
175
  return True
176
176
  ```
177
177
  Then only two test with `PUT` request are generated.
178
+
179
+ ## Pabot Support
180
+
181
+ [Pabot](https://pabot.org/) is a parallel executor for Robot Framework tests, and
182
+ `SchemathesisLibrary` supports it.
183
+
184
+ However, there's a crucial point to consider. Because `SchemathesisLibrary` uses
185
+ [DataDriver](https://github.com/Snooz82/robotframework-datadriver) to generate
186
+ tests dynamically, you cannot use Schemathesis's built-in parallel execution
187
+ feature (`--workers` option).
188
+
189
+ When using Pabot, you are responsible for organizing your test suites to avoid
190
+ generating the same tests in multiple parallel processes. A good strategy might be to
191
+ split your test into different suites, where each suite targets a specific scenario.
192
+
193
+ For example, you could create separate suites for:
194
+ - A user that is not found in the system.
195
+ - A user that is found and has valid credentials.
196
+ - A user that is found but has invalid credentials.
197
+
198
+ This approach ensures that each Pabot process works on a unique set of tests. Since
199
+ every API and system is different, a universal rule for structuring suites is not
200
+ possible, but this scenario-based division might be good starting point.
@@ -159,3 +159,26 @@ def filter_query(ctx, query) -> bool:
159
159
  return True
160
160
  ```
161
161
  Then only two test with `PUT` request are generated.
162
+
163
+ ## Pabot Support
164
+
165
+ [Pabot](https://pabot.org/) is a parallel executor for Robot Framework tests, and
166
+ `SchemathesisLibrary` supports it.
167
+
168
+ However, there's a crucial point to consider. Because `SchemathesisLibrary` uses
169
+ [DataDriver](https://github.com/Snooz82/robotframework-datadriver) to generate
170
+ tests dynamically, you cannot use Schemathesis's built-in parallel execution
171
+ feature (`--workers` option).
172
+
173
+ When using Pabot, you are responsible for organizing your test suites to avoid
174
+ generating the same tests in multiple parallel processes. A good strategy might be to
175
+ split your test into different suites, where each suite targets a specific scenario.
176
+
177
+ For example, you could create separate suites for:
178
+ - A user that is not found in the system.
179
+ - A user that is found and has valid credentials.
180
+ - A user that is found but has invalid credentials.
181
+
182
+ This approach ensures that each Pabot process works on a unique set of tests. Since
183
+ every API and system is different, a universal rule for structuring suites is not
184
+ possible, but this scenario-based division might be good starting point.
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "robotframework-schemathesislibrary"
3
- version = "2.3.2"
3
+ version = "2.4.0"
4
4
  description = "Robot Framework SchemathesisLibrary to automatically create test cases from API specifications."
5
5
  authors = [
6
6
  { name="Tatu Aalto", email="aalto.tatu@gmail.com" },
@@ -12,22 +12,22 @@ keywords = ["Robot Framework", "Schemathesis", "API Testing", "Test Automation"]
12
12
  dependencies = [
13
13
  "robotframework>=7.2.2",
14
14
  "robotframework-datadriver>=1.11.2",
15
- "robotframework-pythonlibcore>=4.5.0",
16
- "schemathesis>=4.17.0",
15
+ "robotframework-pythonlibcore>=4.6.0",
16
+ "schemathesis>=4.21.10",
17
17
  ]
18
18
 
19
19
  [dependency-groups]
20
20
  dev = [
21
- "coverage>=7.13.5",
22
- "fastapi[standard]>=0.136.1",
21
+ "coverage>=7.14.1",
22
+ "fastapi[standard]>=0.138.0",
23
23
  "invoke>=3.0.3",
24
- "mypy>=1.20.2",
25
- "pytest>=9.0.3",
26
- "requests>=2.33.1",
24
+ "mypy>=2.1.0",
25
+ "pytest>=9.1.1",
26
+ "requests>=2.34.2",
27
+ "robotframework-pabot>=5.2.2",
27
28
  "robotframework-requests>=0.9.7",
28
- "robotframework-robocop>=8.2.7",
29
- "ruff==0.15.12",
30
- "types-requests>=2.33.0.20260503",
29
+ "robotframework-robocop>=8.3.2",
30
+ "ruff==0.15.18",
31
31
  ]
32
32
 
33
33
  [tool.semantic_release.settings]
@@ -31,7 +31,7 @@ from .schemathesisreader import Options, SchemathesisReader
31
31
  if TYPE_CHECKING:
32
32
  from pathlib import Path
33
33
 
34
- __version__ = "2.3.2"
34
+ __version__ = "2.4.0"
35
35
 
36
36
 
37
37
  class SchemathesisLibrary(DynamicCore):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: robotframework-schemathesislibrary
3
- Version: 2.3.2
3
+ Version: 2.4.0
4
4
  Summary: Robot Framework SchemathesisLibrary to automatically create test cases from API specifications.
5
5
  Author-email: Tatu Aalto <aalto.tatu@gmail.com>
6
6
  License-Expression: Apache-2.0
@@ -10,8 +10,8 @@ Description-Content-Type: text/markdown
10
10
  License-File: LICENSE
11
11
  Requires-Dist: robotframework>=7.2.2
12
12
  Requires-Dist: robotframework-datadriver>=1.11.2
13
- Requires-Dist: robotframework-pythonlibcore>=4.5.0
14
- Requires-Dist: schemathesis>=4.17.0
13
+ Requires-Dist: robotframework-pythonlibcore>=4.6.0
14
+ Requires-Dist: schemathesis>=4.21.10
15
15
  Dynamic: license-file
16
16
 
17
17
  # Robot Framework SchemathesisLibrary
@@ -175,3 +175,26 @@ def filter_query(ctx, query) -> bool:
175
175
  return True
176
176
  ```
177
177
  Then only two test with `PUT` request are generated.
178
+
179
+ ## Pabot Support
180
+
181
+ [Pabot](https://pabot.org/) is a parallel executor for Robot Framework tests, and
182
+ `SchemathesisLibrary` supports it.
183
+
184
+ However, there's a crucial point to consider. Because `SchemathesisLibrary` uses
185
+ [DataDriver](https://github.com/Snooz82/robotframework-datadriver) to generate
186
+ tests dynamically, you cannot use Schemathesis's built-in parallel execution
187
+ feature (`--workers` option).
188
+
189
+ When using Pabot, you are responsible for organizing your test suites to avoid
190
+ generating the same tests in multiple parallel processes. A good strategy might be to
191
+ split your test into different suites, where each suite targets a specific scenario.
192
+
193
+ For example, you could create separate suites for:
194
+ - A user that is not found in the system.
195
+ - A user that is found and has valid credentials.
196
+ - A user that is found but has invalid credentials.
197
+
198
+ This approach ensures that each Pabot process works on a unique set of tests. Since
199
+ every API and system is different, a universal rule for structuring suites is not
200
+ possible, but this scenario-based division might be good starting point.
@@ -0,0 +1,4 @@
1
+ robotframework>=7.2.2
2
+ robotframework-datadriver>=1.11.2
3
+ robotframework-pythonlibcore>=4.6.0
4
+ schemathesis>=4.21.10
@@ -1,4 +0,0 @@
1
- robotframework>=7.2.2
2
- robotframework-datadriver>=1.11.2
3
- robotframework-pythonlibcore>=4.5.0
4
- schemathesis>=4.17.0