diff options
| author | Xavier-Do <xdo@odoo.com> | 2019-07-01 15:32:45 +0000 |
|---|---|---|
| committer | Xavier-Do <xdo@odoo.com> | 2019-07-11 09:03:14 +0000 |
| commit | 95b4f2ab4b5698ab3a28c9c35ac8da6fb6def983 (patch) | |
| tree | f863a0f5f2933556f59c7e2aa4bcafdfed9029f5 /odoo/tools/config.py | |
| parent | b8f4ad585e9eedb3bb71559e5948dfacc9dfb3a5 (diff) | |
[IMP] core: improve test_tags
Add the support to be able to specify exlicitely module, class and method name in test_tags
Before this commit, there is no distinction between module tag and test tag. Meaning
that --test-tag module_name will replace the default +standard tag and execute all test
of the module.
This commit tries to keep the initial behaviour, while addind new features, like explicit
modules tag with /module_name, as well as class (:class) and method (.method)
Some usage examples:
--test_tags /module will execute all standard test of module
--test_tags :class will execute all standard test with class name 'class'
--test_tags .method will execute all standard test with method name 'method'
--test_tags external/module will execute all external test of module
--test_tags */module will execute all tests of module,
--test_tags */module,-standard will execute all non standard tests of module,
--test_tags -/website:TestUiTranslate.test_admin_tour_rte_translator will disable only rte translator test
closes odoo/odoo#34756
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
Diffstat (limited to 'odoo/tools/config.py')
| -rw-r--r-- | odoo/tools/config.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/odoo/tools/config.py b/odoo/tools/config.py index e9a1d388e1f..4a44415ac58 100644 --- a/odoo/tools/config.py +++ b/odoo/tools/config.py @@ -160,7 +160,14 @@ class configmanager(object): dest='test_enable', help="Enable unit tests.") group.add_option("--test-tags", dest="test_tags", - help="Comma separated list of tags to filter which tests to excute. Enable unit tests if set.") + help="""Comma separated list of spec to filter which tests to execute. Enable unit tests if set. + A filter spec has the format: [-][tag][/module][:class][.method] + The '-' specifies if we want to include or exclude tests matching this spec. + The tag will match tags added on a class with a @tagged decorator. By default tag value is 'standard' when not + given on include mode. '*' will match all tags. Tag will also match module name (deprecated, use /module) + The module, class, and method will respectively match the module name, test class name and test method name. + examples: :TestClass.test_func,/test_module,external + """) parser.add_option_group(group) |
