|
1 | 1 | # utPLSQL-sql-cli
|
2 |
| -A bash/windows command-line client for utPLSQL v3 |
| 2 | + |
| 3 | +Bash & windows command-line client for [utPLSQL v3](https://github.com/utPLSQL/utPLSQL/) |
| 4 | + |
| 5 | +Provides an easy way of invoking utPLSQL from command-line. |
| 6 | +Main features: |
| 7 | + |
| 8 | +- Provides outputs from first reporter in real-time, so you can see the progress of your test execution |
| 9 | +- Ability to run tests with multiple reporters simultaneously |
| 10 | +- Ability to save output from every individual reporter to separate output file |
| 11 | +- Provides coloured outputs |
| 12 | +- Maps project and test files to database objects for reporting purposes |
| 13 | +- Allows execution of selected suites, subset of suite |
| 14 | + |
| 15 | +# Requirements |
| 16 | + |
| 17 | +The scripts require `sqlplus` to be installed and configured to be in your PATH. |
| 18 | + |
| 19 | +When using reporters for Sonar or Coveralls the the `ut_run.bat`/`ut_run` script needs to be invoked from project's root directory. |
| 20 | + |
| 21 | +Number of script parameters cannot exceed 39. |
| 22 | + |
| 23 | +# Script Invocation |
| 24 | + |
| 25 | +`ut_run user/password@database [-p=(ut_path|ut_paths)] [-c] [-f=format [-o=output] [-s] ...] [-source_path=path] [-test_path=path]` |
| 26 | + |
| 27 | +# Parameters |
| 28 | + |
| 29 | +``` |
| 30 | + user - username to connect as |
| 31 | + password - password of the user |
| 32 | + database - database to connect to |
| 33 | + -p=suite_path(s) - A suite path or a comma separated list of suite paths for unit test to be executed. |
| 34 | + The path(s) can be in one of the following formats: |
| 35 | + schema[.package[.procedure]] |
| 36 | + schema:suite[.suite[.suite][...]][.procedure] |
| 37 | + Both formats can be mixed in the list. |
| 38 | + If only schema is provided, then all suites owner by that schema are executed. |
| 39 | + If -p is omitted, the current schema is used. |
| 40 | + -f=format - A reporter to be used for reporting. |
| 41 | + If no -f option is provided, the default ut_documentation_reporter is used. |
| 42 | + Available options: |
| 43 | + -f=ut_documentation_reporter |
| 44 | + A textual pretty-print of unit test results (usually use for console output) |
| 45 | + -f=ut_teamcity_reporter |
| 46 | + For reporting live progress of test execution with Teamcity CI. |
| 47 | + -f=ut_xunit_reporter |
| 48 | + Used for reporting test results with CI servers like Jenkins/Hudson/Teamcity. |
| 49 | + -f=ut_coverage_html_reporter |
| 50 | + Generates a HTML coverage report with summary and line by line information on code coverage. |
| 51 | + Based on open-source simplecov-html coverage reporter for Ruby. |
| 52 | + Includes source code in the report. |
| 53 | + -f=ut_coveralls_reporter |
| 54 | + Generates a JSON coverage report providing information on code coverage with line numbers. |
| 55 | + Designed for [Coveralls](https://coveralls.io/). |
| 56 | + -f=ut_coverage_sonar_reporter |
| 57 | + Generates a JSON coverage report providing information on code coverage with line numbers. |
| 58 | + Designed for [SonarQube](https://about.sonarqube.com/) to report coverage. |
| 59 | + -f=ut_sonar_test_reporter |
| 60 | + Generates a JSON report providing detailed information on test execution. |
| 61 | + Designed for [SonarQube](https://about.sonarqube.com/) to report test execution. |
| 62 | +
|
| 63 | + -o=output - Defines file name to save the output from the specified reporter. |
| 64 | + If defined, the output is not displayed on screen by default. This can be changed with the -s parameter. |
| 65 | + If not defined, then output will be displayed on screen, even if the parameter -s is not specified. |
| 66 | + If more than one -o parameter is specified for one -f parameter, the last one is taken into consideration. |
| 67 | + -s - Forces putting output to to screen for a given -f parameter. |
| 68 | + -source_path=path - Path to project source files. Used by coverage reporters. The path needs to be relative to the projects root directory. |
| 69 | + -test_path=path - Path to unit test source files. Used by test reporters. The path needs to be relative to the projects root directory. |
| 70 | + -c - If specified, enables printing of test results in colors as defined by ANSICONSOLE standards. |
| 71 | + Works only on reporeters that support colors (ut_documentation_reporter) |
| 72 | +``` |
| 73 | + |
| 74 | +Parameters -f, -o, -s are correlated. That is parameters -o and -s are controlling outputs for reporter specified by the preceding -f parameter. |
| 75 | + |
| 76 | +**Sonar and Coveralls reporter will only provide valid reports, when source_path and/or test_path are provided, and ut_run is executed from your project's root path.** |
| 77 | + |
| 78 | +Examples: |
| 79 | + |
| 80 | +`ut_run hr/hr@xe -p=hr_test -f=ut_documentation_reporter -o=run.log -s -f=ut_coverage_html_reporter -o=coverage.html -source_path=source` |
| 81 | + |
| 82 | +Invokes all Unit tests from schema/package "hr_test" with two reporters: |
| 83 | + |
| 84 | +- ut_documentation_reporter - will output to screen and save output to file "run.log" |
| 85 | +- ut_coverage_html_reporter - will report **only** on database objects that are mapping to file structure from "source" folder and save output to file "coverage.html" |
| 86 | + |
| 87 | + |
| 88 | +`ut_run hr/hr@xe` |
| 89 | + |
| 90 | +Invokes all unit test suites from schema "hr". |
| 91 | +Results are displayed to screen using default `ut_documentation_reporter`. |
| 92 | + |
| 93 | +**Enabling color outputs on Windows** |
| 94 | + |
| 95 | +To enable color outputs from SQLPlus on winddows you need to install an open-source utility called [ANSICON](http://adoxa.altervista.org/ansicon/) |
0 commit comments