Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit f8a3b87

Browse files
committed
Outsource the Version comparison to a separate file so it can be
directly linked
1 parent 48a3f9e commit f8a3b87

3 files changed

Lines changed: 58 additions & 49 deletions

File tree

docs/compare_version2_to_3.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
For version 3 has been a complete rewrite of the framework, the way it can be used is different to
2+
the previous versions, but also more in line with other modern unit-testing frameworks like JUnit and RSpec.
3+
4+
There is a [migration tool](https://github.com/utPLSQL/utPLSQL-v2-v3-migration) that can help you to migrate your existing utPLSQL v2 tests to the v3 capabilities.
5+
6+
# Feature comparison
7+
8+
| Feature | Version 2 | Version 3 |
9+
| -------------------------------------- | ---------------------- | ---------------------- |
10+
| Easy to install | Yes | Yes |
11+
| Documentation | Yes | Yes |
12+
| License | GPL v2 | Apache 2.0 |
13+
| **Tests Creation** | | |
14+
| Declarative test configuration | No | Yes - Annotations<sup>1</sup>|
15+
| Tests as Packages | Yes | Yes |
16+
| Multiple Tests in a single Package | Yes | Yes |
17+
| Optional Setup/Teardown | No | Yes |
18+
| Different Setup/Teardown <br/> For Each Test in a Single Package| No | Yes - Annotations<sup>1</sup> |
19+
| Suite Definition Storage | Tables | Package - Annotations<sup>1</sup> |
20+
| Multiple Suites | Yes | Yes |
21+
| Suites can contain Suites | No | Yes |
22+
| Automatic Test detection | No | Yes - Annotations<sup>1</sup>|
23+
| Unconstrained naming of Test packages | No - prefixes | Yes - name not relevant|
24+
| Require Prefix on Test procedures | No - prefixes | Yes - name not relevant|
25+
| Auto Compilation of Tests | Yes | No (Let us know if you use this) |
26+
| Assertion Library | 30 assertions<sup>2</sup> | 26 matchers (13 + 13 negated) |
27+
| Extendable assertions | No | Yes - custom matchers |
28+
| PLSQL Record Assertions | generated code through **utRecEq** Package | [possible on Oracle 12c+](https://oracle-base.com/articles/12c/using-the-table-operator-with-locally-defined-types-in-plsql-12cr1) using [cursor matchers](docs/userguide/expectations.md#comparing-cursors)|
29+
| Test Skeleton Generation | Yes | No (Let us know if you use this) |
30+
| **Test Execution<sup>3</sup>** | | |
31+
| Single Test Package Execution | Yes | Yes |
32+
| Single Test Procedure Execution | No | Yes |
33+
| Test Suite Execution | Yes | Yes |
34+
| Subset of Suite Execution | No | Yes |
35+
| Multiple Suite Execution | No | Yes |
36+
| Organizing Suites into hierarchies | No | Yes |
37+
| **Code Coverage Reporting** | No | Yes |
38+
| Html Coverage Report | No | Yes |
39+
| Sonar XML Coverage Report | No | Yes |
40+
| Coveralls Json Coverage Report | No | Yes |
41+
| Framework Transaction Control | No | Yes - Annotations<sup>1</sup> |
42+
| **Test Output** | | |
43+
| Real-time test execution progress reporting | No | Yes |
44+
| Multiple Output Reporters can be used during test execution | No| Yes |
45+
| DBMS_OUTPUT | Yes | Yes (clean formatting) |
46+
| File | Yes (to db server only)| Yes (on client side) |
47+
| Stored in Table | Yes | No (can be added as custom reporter) |
48+
| XUnit format support | No | Yes |
49+
| HTML Format | Yes | No |
50+
| Custom Output reporter | Yes-needs configuration| Yes - no config needed |
51+
52+
<sup>1</sup> Annotations are specially formatted comments in your package specification. This enables *declarative* test configuration that is coupled with the source code. See Documentation for more details.
53+
54+
<sup>2</sup> **utAssert2** package - Contains 59 Assertions - 2 Not implemented = 57, 28 are duplicated only change on outcome_in parameter 57-28 = 29, **utPipe** package - Contains 1 Assertion 29 + 1 = 30
55+
56+
<sup>3</sup> Test execution comparison is in a single call so the results are combined. We know it was always possible to group in any way with multiple calls. But that may not be desired under a CI system where you want a single JUnit XML Output.

docs/index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ The framework follows industry standards and best patterns of modern Unit Testin
2525
- [License](about/license.md)
2626
- [Support](about/support.md)
2727
- [Authors](about/authors.md)
28+
- [Version 2 to Version 3 Comparison](compare_version2_to_3.md)
2829

2930
# Demo project
3031

readme.md

Lines changed: 1 addition & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -187,55 +187,7 @@ If you have a great feature in mind, that you would like to see in utPLSQL v3 pl
187187

188188
# Version 2 to Version 3 Comparison
189189

190-
| Feature | Version 2 | Version 3 |
191-
| -------------------------------------- | ---------------------- | ---------------------- |
192-
| Easy to install | Yes | Yes |
193-
| Documentation | Yes | Yes |
194-
| License | GPL v2 | Apache 2.0 |
195-
| **Tests Creation** | | |
196-
| Declarative test configuration | No | Yes - Annotations<sup>1</sup>|
197-
| Tests as Packages | Yes | Yes |
198-
| Multiple Tests in a single Package | Yes | Yes |
199-
| Optional Setup/Teardown | No | Yes |
200-
| Different Setup/Teardown <br/> For Each Test in a Single Package| No | Yes - Annotations<sup>1</sup> |
201-
| Suite Definition Storage | Tables | Package - Annotations<sup>1</sup> |
202-
| Multiple Suites | Yes | Yes |
203-
| Suites can contain Suites | No | Yes |
204-
| Automatic Test detection | No | Yes - Annotations<sup>1</sup>|
205-
| Unconstrained naming of Test packages | No - prefixes | Yes - name not relevant|
206-
| Require Prefix on Test procedures | No - prefixes | Yes - name not relevant|
207-
| Auto Compilation of Tests | Yes | No (Let us know if you use this) |
208-
| Assertion Library | 30 assertions<sup>2</sup> | 26 matchers (13 + 13 negated) |
209-
| Extendable assertions | No | Yes - custom matchers |
210-
| PLSQL Record Assertions | generated code through **utRecEq** Package | [possible on Oracle 12c+](https://oracle-base.com/articles/12c/using-the-table-operator-with-locally-defined-types-in-plsql-12cr1) using [cursor matchers](docs/userguide/expectations.md#comparing-cursors)|
211-
| Test Skeleton Generation | Yes | No (Let us know if you use this) |
212-
| **Test Execution<sup>3</sup>** | | |
213-
| Single Test Package Execution | Yes | Yes |
214-
| Single Test Procedure Execution | No | Yes |
215-
| Test Suite Execution | Yes | Yes |
216-
| Subset of Suite Execution | No | Yes |
217-
| Multiple Suite Execution | No | Yes |
218-
| Organizing Suites into hierarchies | No | Yes |
219-
| **Code Coverage Reporting** | No | Yes |
220-
| Html Coverage Report | No | Yes |
221-
| Sonar XML Coverage Report | No | Yes |
222-
| Coveralls Json Coverage Report | No | Yes |
223-
| Framework Transaction Control | No | Yes - Annotations<sup>1</sup> |
224-
| **Test Output** | | |
225-
| Real-time test execution progress reporting | No | Yes |
226-
| Multiple Output Reporters can be used during test execution | No| Yes |
227-
| DBMS_OUTPUT | Yes | Yes (clean formatting) |
228-
| File | Yes (to db server only)| Yes (on client side) |
229-
| Stored in Table | Yes | No (can be added as custom reporter) |
230-
| XUnit format support | No | Yes |
231-
| HTML Format | Yes | No |
232-
| Custom Output reporter | Yes-needs configuration| Yes - no config needed |
233-
234-
<sup>1</sup> Annotations are specially formatted comments in your package specification. This enables *declarative* test configuration that is coupled with the source code. See Documentation for more details.
235-
236-
<sup>2</sup> **utAssert2** package - Contains 59 Assertions - 2 Not implemented = 57, 28 are duplicated only change on outcome_in parameter 57-28 = 29, **utPipe** package - Contains 1 Assertion 29 + 1 = 30
237-
238-
<sup>3</sup> Test execution comparison is in a single call so the results are combined. We know it was always possible to group in any way with multiple calls. But that may not be desired under a CI system where you want a single JUnit XML Output.
190+
[Version 2 to Version 3 Comparison](docs/compare_version2_to_3.md)
239191

240192
# Supporters
241193

0 commit comments

Comments
 (0)