You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Keep in mind that you will need to download/provide Oracle JDBC driver separately, as it is not part of utPLSQL-cli due to licensing restrictions.
35
+
34
36
# ut.run
35
37
36
38
The `ut` package contains overloaded `run` procedures and functions.
@@ -167,11 +169,63 @@ The main difference compared to the `ut.run` API is that `ut_runner.run` does no
167
169
`ut_runner.run` accepts multiple reporters. Each reporter pipes to a separate output (uniquely identified by output_id).
168
170
Outputs of multiple reporters can be consumed in parallel. This allows for live reporting of test execution progress with threads and several database sessions.
169
171
170
-
The concept is pretty simple.
172
+
`ut_runner.run` API is used by utPLSQL-cli, utPLSQL-SQLDeveloper extension and utPLSQL-maven-plugin and allows for:
173
+
- deciding on the scope of test run (by schema names, object names, suite paths or tags )
174
+
- running tests with several concurrent reporters
175
+
- real-time reporting of test execution progress
176
+
- controlling colored text output to the screen
177
+
- controlling scope of code coverage reports
178
+
- mapping of database source code to project files
179
+
- controlling behavior on test-failures
180
+
- controlling client character set for HTML and XML reports
181
+
- controlling rollback behavior of test-run
182
+
- controlling random order of test execution
183
+
184
+
Running with multiple reporters.
171
185
172
186
- in the main thread (session), define the reporters to be used. Each reporter has it's output_id and so you need to extract and store those output_ids.
173
187
- as a separate thread, start `ut_runner.run` and pass reporters with previously defined output_ids.
174
-
- for each reporter start a separate thread and read outputs from the `ut_output_buffer.get_lines` table function by providing the output_id defined in the main thread.
188
+
- for each reporter start a separate thread and read outputs from the `reporter.get_lines` table function or from `reporter.get_lines_cursor()` by providing the `reporter_id` defined in the main thread.
189
+
- each reporter for each test-run must have a unique `reporter_id`. The `reporter_id` is used between two sessions to identify the data stream
0 commit comments