Changelog¶
1.13.0 01-03-2022
[Feature]: Support python 3.9
1.12.0 24-09-2020
1.11.0 06-08-2020
[Bug] #899: Fix slash.exclude decorator for fixtures
[Bug]: Fix iter_suite_file_paths to get test path of the tests as relative if relative path is provided in suite file
1.10.0 21-04-2020
1.9.0 02-12-2019
[Feature]: Added a plugin which provides links to test logs which have been archived by a CI system
[Feature]: Added support for tagging test parameterization values
[Feature] #598: Drop support for python version < 3.6
[Feature] #979: Change Ordered set implementation from orderedset to ordered-set, as the former is not maintained anymore
[Feature] #982: Read files as binary to avoid decoding errors
[Feature] #241: Support ‘slashconf’ directory
[Feature] #998: Choose IPython colors scheme for interactive test
[Bug]: Corrected behaviour of float and int test details in xunit output
[Bug] #985: Fix a bug where Slash did not expand parameterizations used through use_fixture properly
[Bug] #991: Fix detection of yield-fixture when combined with parametrization
1.8.0 03-07-2019
[Feature]: Resuming sessions now supports
--failed-only
and--unstarted-only
to control which tests to resume[Feature]: Add
slash.ignored_warnings
context[Feature]: Add tests and suite execution time to xunit plugin
[Feature] #950: Slash now emits a log record when handling fatal errors
[Feature] #925: Support was added for terminals with light backgrounds by changing
log.console_theme.dark_background
configuration[Feature] #952: Added support for getting the currently active scope (
test
,module
orsession
) through the newget_current_scope
API.session.scope_manager.current_scope
is also available.[Feature] #452: Drop support for old-style assertions
[Feature] #945: Drop support for deprecated arguments of
add_cleanup
1.7.10 30-04-2019
[Bug] #928: Fixed a bug causing requirements to leak across sibling test classes
[Bug] #934: Parallel sessions now honor fatal exceptions encountered in worker sessions
[Bug] #930: Restore behavior of exceptions propagating out of the test_start or test_end hooks. Correct behavior is for those to fail the test (thanks @pierreluctg)
1.7.9 09-03-2019
[Bug]: Revert console coloring change, as it does not behave consistently across different terminals
1.7.8 04-03-2019
1.7.7 21-01-2019
[Bug]: Fix swallowing of broken-pipe errors from console reporter - will not add errors
[Bug]: Several Windows-specific fixes (thanks @pierreluctg)
[Bug]: Fix test_start triggering when exceptions are thrown in class-based tests (thanks @pierreluctg)
[Bug] #907: Fix parallel worker timeout issues
1.7.6 16-12-2018
1.7.5 23-10-2018
[Bug] #897: Fix handling of
-k
patterns beginning withnot
1.7.4 23-10-2018
[Bug]: Fix backslash-python dependency check
1.7.3 21-10-2018
1.7.2 11-10-2018
[Bug] #882: Fix fixture reuse logic regression causing fixtures to be evaluated more than once in some cases
1.7.1 7-10-2018
[Bug] #876: Support disabling convertion of log error to slash-error by extra’s
capture=False
1.7.0 7-10-2018
[Feature] #797: Add ability to filter tests of
slash list
with-k
[Feature] #799: Tags can now be set more than once on a test, providing that they are set in the same way (same value or without a value)
[Feature] #693: Remove backwards compatibility for
log.errors_subpath
configuration. Uselog.highlights_subpath
configuration instead.[Feature] #803: Add exception class for internal Slash errors:
SlashInternalError
[Feature] #650: Fixtures can now be tagged the same way as tests
[Feature] #824: Support API to determine cleanup phase -
get_current_cleanup_phase()
andis_in_cleanup()
[Feature] #738: Collect warnings that were omitted before session started
[Feature] #648: Add support for use_fixtures decotaror
[Feature] #843: Add
slash.app_quit
hook, a hook that is called whenever the Slash process finishes. This is useful to allow certain plugins to perform important cleanups on session-wide errors[Feature] #836: Resuming sessions now supports
--failed-first
and--unstarted-first
to control the resuming priority[Feature] #12: Added a signal handling plugin (see documentation for more details)
[Feature] #825: Support capturing error logs as actual errors, when
run.capture.error_logs_as_errors
is enabled[Bug] #810: Fixed handling of notification messages containing curly braces
[Bug] #812: Fixed debug_if_needed when called before session initialized
[Bug] #804: Swallow IO Errors from console reporter
[Bug] #846: Use AND operator between
ignore_warnings
parameters[Bug] #864: Fix handling of exceptions during
_run_single_test()
before test started
1.6.5 2-9-2018
[Bug] #837: Fix handling exceptions during
_log_file_handler_context
1.6.4 19-7-2018
[Bug] #820: Fix error handling when capturing distilled tracebacks
1.6.1 1-7-2018
[Bug]: Fix support for Python 3.7
1.6.0 6-5-2018
[Feature] #782: Added new hooks:
before_session_cleanup
,after_session_end
[Feature] #779: Added
config.root.run.project_name
, which can be configured to hold the name of the current project. It defaults to the name of the directory in which your project’s .slashrc is located[Feature] #785: Plugins can now be marked to indicate whether or not they support parallel execution, using
slash.plugins.parallel_mode
. To avoid errors, Slash assumes that unmarked plugins do not support parallel execution.[Feature] #528:
slash.exclude
can now exclude combinations of parameter values[Feature] #769: Added a new configuration flag,
log.show_raw_param_values
, defaulting toFalse
. If set to True, log lines for beginnings of tests will contain actual parametrization values instead of format-safe strings.[Feature] #771: Keyword arguments to
registers_on
now get forwarded to Gossip’sregister
API[Bug] #772: Fix handling exceptions which raised from None in interactive session
[Bug] #783: Session errors in children are now handled and reported when running with parallel
1.5.1 10-3-2018
[Bug] #767: Fixed traceback variable capture for cases where
self=None
1.5.0 7-3-2018
[Feature] #662: Change email notification icon based on session success status
[Feature] #660: Add configuration for notifications plugin
--notify-only-on-failure
[Feature] #661: Support PDB notifications by notifications plugin
[Feature] #675: Emit native python warnings for logbook warning level
[Feature] #686:
assert_raises
raisesExpectedExceptionNotCaught
if exception wasn’t caught also allowing inspection of the expected exception object[Feature] #689: Added a new hook,
interruption_added
, for registering exceptions which cause test/session interruptions[Feature] #658: Deprecate
PluginInterface.get_config()
and rename it toPluginInterface.get_default_config()
[Feature] #692: Enhance errors summary log to session highlights log (configuration changed:
log.errors_subpath
->log.highlights_subpath
)[Feature] #685: use.X is now a shortcut for use(‘x’) for fixture annotations
[Feature]: Suite files can now have a
repeat: X
marker to make the test run multiple times (Thanks @pierreluctg!)[Feature]: During the execution of
error_added
hooks, traceback frame objects now havepython_frame
, containing the original Pythonic frame that yielded them. Those are cleared soon after the hook is called.[Feature] #704: Error objects now have their respective
exc_info
attribute containing the exception info for the current info (if available). This deprecates the use of thelocals
/globals
attributes on traceback frames.[Feature] #698: By setting
log.traceback_variables
toTrue
, traceback variable values will now be written to the debug log upon failures/errors[Feature] #712: Added
--pdb-filter
- a new command-line flag that allows the user to enter pdb only on specific caught exceptions, based on pattern matching (similar to-k
)[Feature]: Support fixture keyword arguments for
generator_fixture
[Feature] #723: Add configuration for resume state path location
[Feature] #711: Logs can now optionally be compressed on-the-fly through the
log.compression.enabled
configuration parameter[Feature]:
-X
can now be used to turn off stop-on-error behavior. Useful if you have it on by default through a configuration file[Feature] #719: Added log.core_log_level, allowing limiting the verbosity of logs initiated from Slash itself
[Feature] #681: Added a new hook,
log_file_closed
, and added configurationlog.cleanup
to enable removing log files after they are closed[Feature] #702: Rename log.traceback_level to log.console_traceback_level
[Feature] #740: session.results.current is now a complete synonym for slash.context.result
[Feature]: Add
slash rerun
- given a session_id, run all the tests of this session[Feature] #747: session.results.global_result.is_success() now returns False if any test in the session isn’t successful
[Feature] #755:
timestamp
can now be used when formatting log path names[Feature] #757:
slash list tests
now accepts the--warnings-as-errors
flag, making it treat warnings it encounters as errors[Feature] #752: Added
slash.ignore_warnings
to filter unwanted warnings during sessions[Feature] #664: Added
metadata.set_file_path
, allowing integrations to set a custom file path to be associated with a loaded test[Feature]: Added a configuration option preventing
slash.g
from being available in interactive namespaces[Feature] #697: Added
slash.before_interactive_shell
hook[Feature] #590: Add support for labeling parametrization variations
[Bug] #679: Fix coloring console for non TTY stdout
[Bug] #684: Optimize test loading with
--repeat-each
and--repeat-all
[Bug]: Fix tests loading order for some FS types
[Bug] #671: Help for
slash resume
is now more helpful[Bug] #710: Fix sorting when repeat-all option is use
[Bug] #669: Session-scoped fixtures now properly register cleanups on session scope as expected
[Bug] #714: Session cleanups now happen under the global result object
[Bug] #721: Add timeout to sending emails through SMTP
1.4.6 3-12-2017
1.4.3 14-9-2017
[Bug] #665: Support overriding notifications plugin’s
from_email
by configuration[Bug] #668: Properly initialize colorama under Windows
[Bug] #670: Improve handling of interruption exceptions - custom interruption exceptions will now properly cause the session and test to trigger the
session_interrupt
andtest_interrupt
hooks. Unexpected exceptions likeSystemExit
from within tests are now also reported properly instead of silently ignored
1.4.2 13-8-2017
[Bug]: Add
current_config
property to plugins
1.4.1 9-8-2017
[Bug]: Restore default enabled state for Prowl/NMA/Pushbullet notifications
[Bug]: Add ability to include details in email notifications
1.4.0 8-8-2017
[Feature] #647: Support installing plugins as “internal” – thus not letting users disable or enable them through the command line
[Feature] #647: Support internal plugins
[Feature] #651: Add
host_fqdn
andhost_name
attributes to session[Feature] #662: Improve notifications plugin, add support for email notifications
[Feature]: Added new hook
prepare_notification
to process notifications before being sent by the notifications plugin
1.3.0 24-07-2017
[Feature]: Assertions coming from plugins and modules loaded from the project’s
.slashrc
now also have assertion rewriting introspection enabled[Feature] #556: Long variable representations are now capped by default when distilling tracebacks
[Feature]: Slash now detects test functions being redefined, hiding previous tests, and warns about it
[Feature]: Added
session.results.has_fatal_errors
to check for fatal errors within a session[Feature] #595: Add allowing_exceptions context letting tests allow specific exceptions in selective context
[Feature] #600: Use vintage package for deprecations
[Feature] #592: Added
exception_attributes
dict toError
objects[Feature]: Added
SLASH_USER_SETTINGS=x
environment variable to give a possibility to override the user slashrc file[Feature] #633: When using the handling_exceptions, it is now possible to obtain the exception object that was handled
[Feature] #635:
slash run
now supports--force-color
/--no-color
flags.[Feature] #617: Support
inhibit_unhandled_exception_traceback
[Feature] #642: Support multiple registrations on the same plugin method with
plugins.registers_on
[Feature] #596: Slash now supports a flag to disable assertion introspection on assertions containing messages (
run.message_assertion_introspection
)[Feature] #213: Added parallel execution capability (still considered experimental) - tests can be run in parallel by multiple subprocess “workers”. See the documentation for more information
[Bug]: Several Windows-specific fixes (thanks Pierre-Luc Tessier Gagné)
[Bug]: Honor run.default_sources configuration when using slash list (thanks Pierre-Luc Tessier Gagné)
[Bug] #606: Swallow python warnings during ast.parse
1.2.5 19-06-2017
[Bug]: Add exception_str shortcut for future compatibility on error objects
1.2.4 19-06-2017
1.2.2 29-05-2017
[Bug] #564: Fix test collection bug causing tests to not be loaded with some plugins
1.2.0 30-04-2017
[Feature] #502: Added
session_interrupt
hook for when sessions are interrupted[Feature] #511: Support adding external logs
Result.add_extra_log_path
which will be retrieved byResult.get_log_paths()
[Feature] #507: Test id can now be obtained via
slash.context.test.id
[Feature] #467: Yield fixtures are now automatically detected by Slash – using
yield_fixture
explicitly is no longer required[Feature] #497: Major overhaul of CLI mechanics – improve help message and usage, as well as cleaner error exits during the session configuration phase
[Feature] #519: Add
--no-output
flag forslash list
[Feature] #512:
slash list-config
now receives a path filter for config paths to display[Feature] #513: Add deep parametrization info (including nested fixtures) to the metadata variation info
[Feature] #524:
slash list
,slash list-config
andslash list-plugins
now supports--force-color
/--no-color
flags. The default changed from colored to colored only for tty[Feature] #476:
slash resume
was greatly improved, and can now also fetch resumed tests from a recorded session in Backslash, if its plugin is configured[Feature] #544: Added
debug.debugger
configuration to enable specifying preferred debugger. You can now pass-o debug.debugger=ipdb
to prefer ipdb over pudb, for example[Feature] #508: Added optional
end_message
argument tonotify_if_slow_context
, allowing better verbosity of long operations[Feature] #529: Switch to PBR
[Bug] #510: Explicitly fail fixtures which name is valid for tests (currently:
test_
prefix)[Bug] #516: Fire test_interrupt earlier and properly mark session as interrupted when a test is interrupted
[Bug] #490: Fixed behavior of plugin dependencies in cases involving mixed usage of plugin-level and hook-level dependencies
[Bug] #551: Fix stopping on error behavior when errors are reported on previous tests
1.1.0 22-11-2016
[Feature] #466: Add –relative-paths flag to
slash list
[Feature] #344: Exceptions recorded with
handling_exceptions
context now properly report the stack frames above the call[Feature]: Added the
entering_debugger
hook to be called before actually entering a debugger[Feature] #468: Slash now detects tests that accidentally contain
yield
statements and fails accordingly[Feature] #461:
yield_fixture
now honors thescope
argument[Feature] #403: add
slash list-plugins
to show available plugins and related information[Feature] #462: Add
log.errors_subpath
to enable log files only recording added errors and failures.[Feature] #400:
slash.skipped
decorator is now implemented through the requirements mechanism. This saves a lot of time in unnecessary setup, and allows multiple skips to be assigned to a single test[Feature] #384: Accumulate logs in the configuration phase of sessions and emit them to the session log. Until now this happened before logging gets configured so the logs would get lost
[Feature] #195: Added
this.test_start
andthis.test_end
to enable fixture-specific test start and end hooks while they’re active[Feature] #287: Add support for “facts” in test results, intended for coverage reports over relatively narrow sets of values (like OS, product configuration etc.)
[Feature] #352: Suite files can now contain filters on specific items via a comment beginning with
filter:
, e.g./path/to/test.py # filter: x and not y
[Feature] #362: Add ability to intervene during test loading and change run order. This is done with a new
tests_loaded
hook and a new field in the test metadata controlling the sort order. See the cookbook for more details[Feature] #359: Add trace logging of fixture values, including dependent fixtures
[Feature] #417:
add_error
/add_failure
can now receive both message and exc_info information[Feature] #484:
slash list
now indicates fixtures that are overriding outer fixtures (e.g. fromslashconf.py
)[Feature] #369: Add
slash.exclude
to only skip specific parametrizations of a specific test or a dependent fixture. See the cookbook section for more details[Feature] #485: xunit plugin now saves the run results even when the session doesn’t end gracefully (Thanks @eplaut)
[Bug] #464: Fix exc_info leaks outside of
assert_raises
&handling_exceptions
[Bug] #477: Fix assert_raises with message for un-raised exceptions
[Bug] #479: When installing and activating plugins and activation fails due to incompatibility, the erroneous plugins are now automatically uninstalled
[Bug] #483: Properly handle possible exceptions when examining traceback object attributes
1.0.2 19-10-2016
[Bug] #481: Fixed tuple parameters for fixtures
1.0.1 07-08-2016
1.0.0 26-06-2016
[Feature] #412: Add is_in_test_code to traceback json
[Feature] #413: Test names inside files are now sorted
[Feature] #416: Add –no-params for “slash list”
[Feature] #427: Drop support for Python 2.6
[Feature] #428: Requirements using functions can now have these functions return tuples of (fullfilled, requirement_message) specifying the requirement message to display
[Feature] #430: Added coverage plugin to generate code coverage report at the end of the run (
--with-coverage
)[Feature] #435: Added
swallow_types
argument to exception_handling context to enable selective swallowing of specific exceptions[Feature] #436:
slash list
now fails by default if no tests are listed. This can be overriden by specifying--allow-empty
[Feature] #424: slash internal app context can now be instructed to avoid reporting to console (use
report=False
)[Feature] #437: Added
test_avoided
hook to be called when tests are completely skipped (e.g. requirements)[Feature] #423: Added support for generator fixtures
[Feature] #401: session_end no longer called on plugins when session_start isn’t called (e.g. due to errors with other plugins)
[Feature] #441:
variation
in test metadata now contains bothid
andvalues
. The former is a unique identification of the test variation, whereas the latter contains the actual fixture/parameter values when the test is run[Feature] #439: Added support
yield_fixture
[Feature] #276: Added support for fixture aliases using
slash.use
[Feature] #407: Added
--repeat-all
option for repeating the entire suite several times[Feature] #397: Native Python warnings are now captured during testing sessions
[Feature] #446: Exception tracebacks now include instance attributes to make debugging easier
[Feature] #447: Added a more stable sorting logic for cartesian products of parametrizations
[Bug] #442: Prevent
session_end
from being called whensession_start
doesn’t complete successfully
0.20.2 03-04-2016
0.20.1 01-03-2016
0.20.0 02-02-2016
[Feature] #339: Errors in interactive session (but not ones originating from IPython input itself) are now recorded as test errors
[Feature] #379: Allow exception marks to be used on both exception classes and exception values
[Feature] #385: Add test details to xunit plugin output
[Feature] #386: Make slash list support -f and other configuration parameters
[Feature] #391: Add result.details, giving more options to adding/appending test details
[Feature] #395: Add __slash__.variation, enabling investigation of exact parametrization of tests
[Feature] #398: Allow specifying exc_info for add_error
[Feature] #381:
handling_exceptions
now doesn’t handle exceptions which are currently expected byassert_raises
[Feature] #388:
-k
can now be specified multiple times, implying AND relationship[Feature] #405: Add
--show-tags
flag toslash list
[Feature] #348: Color test code differently when displaying tracebacks
[Bug] #402: TerminatedException now causes interactive sessions to terminate
[Bug] #406: Fix error reporting for session scoped cleanups
[Bug] #408: Fix handling of cleanups registered from within cleanups
0.19.6 01-12-2015
[Bug]: Minor fixes
0.19.5 01-12-2015
[Bug] #390: Fix handling of add_failure and add_error with message strings in xunit plugin
0.19.5 25-11-2015
[Bug] #389: Fix deduction of function names for parametrized tests
0.19.3 05-11-2015
[Bug] #383: Fix fixture passing to
before
andafter
0.19.2 13-10-2015
[Bug] #376: Fix xunit bug when using skip decorators without reasons
0.19.1 01-10-2015
[Bug] #374: Fix issue with xunit plugin
0.19.0 30-09-2015
[Feature] #349: Plugin configuration is now installed in the installation phase, not activation phase
[Feature] #371: Add warning_added hook
[Feature] #366: Added
configure
hook which is called after command-line processing but before plugin activation[Feature] #366:
--with-X
and--without-X
don’t immediately activate plugins, but rather useactivate_later
/deactivate_later
[Feature] #366: Added
activate_later
anddeactivate_later
to the plugin manager, allowing plugins to be collected into a ‘pending activation’ set, later activated withactivate_pending_plugins
[Feature] #368: add slash list-config command
[Feature] #361: Demote slash logs to TRACE level
[Bug] #373: Fix test collection progress when outputting to non-ttys
0.18.2 30-09-2015
[Bug] #372: Fixed logbook compatibility issue
0.18.1 11-08-2015
[Bug] #350: Fixed scope mismatch bug when hooks raise exceptions
0.18.0 02-08-2015
[Feature] #319: Add class_name metadata property for method tests
[Feature] #324: Add test for cleanups with fatal exceptions
[Feature] #240: Add support for test tags
[Feature] #332: Add ability to filter by test tags - you can now filter with
-k tag:sometag
,-k sometag=2
and-k "not sometag=3"
[Feature] #333: Allow customization of console colors
[Feature] #337: Set tb level to 2 by default
[Feature] #233: slash.parametrize: allow argument tuples to be specified
[Feature] #279: Add option to silence manual add_error tracebacks (
-o show_manual_errors_tb=no
)[Feature] #295: SIGTERM handling for stopping sessions gracefully
[Feature] #321: add Error.mark_fatal() to enable calls to mark_fatal right after add_error
[Feature] #335: Add ‘needs’ and ‘provides’ to plugins, to provide fine-grained flow control over plugin calling
[Feature] #347: Add slash.context.fixture to point at the ‘this’ variable of the currently computing fixture
[Bug] #320: Fix scope mechanism to allow cleanups to be added from test_start hooks
[Bug] #322: Fix behavior of skips thrown from cleanup callbacks
[Bug] #322: Refactored a great deal of the test running logic for easier maintenance and better solve some corner cases
[Bug] #329: handling_exceptions(swallow=True) now does not swallow SkipTest exceptions
[Bug] #341: Make sure tests are garbage collected after running
0.17.0 29-06-2015
[Feature] #308: Support registering private methods in plugins using
registers_on
[Feature] #311: Support plugin methods avoiding hook registrations with
registers_on(None)
[Feature] #312: Add before_session_start hook
[Feature] #314: Added
Session.get_total_num_tests
for returning the number of tests expected to run in a session
0.16.1 17-06-2015
[Bug]: fix strict emport dependency
0.16.0 20-05-2015
0.15.0 28-04-2015
[Feature] #271: Add passthrough_types=TYPES parameter to handling_exceptions context
[Feature] #275: Add get_no_deprecations_context to disable deprecation messages temporarily
[Feature] #274: Add optional separation between console log format and file log format
[Feature] #280: Add optional message argument to
assert_raises
[Feature] #170: Add optional
scope
argument toadd_cleanup
, controlling when the cleanup should take place[Feature] #267: Scoped cleanups: associate errors in cleanups to their respective result object. This means that errors can be added to tests after they finish from now on.
[Feature] #286: Better handling of unrun tests when using x or similar. Count of unrun tests is now reported instead of detailed console line for each unrun test.
[Feature] #282: Better handling of fixture dependency cycles
[Feature] #289: Added
get_config
optional method to plugins, allowing them to supplement configuration toconfig.root.plugin_config.<plugin_name>
0.14.3 31-03-2015
[Bug] #288: Fixed accidental log file line truncation
0.14.2 29-03-2015
[Bug] #285: Fixed representation of fixture values that should not be printable (strings with slashes, for instance)
0.14.1 04-03-2015
[Bug] #270: Fixed handling of directory names and class/method names in suite files
0.14.0 03-03-2015
[Feature] #264: Allow specifying location of .slashrc via configuration
[Feature] #263: Support writing colors to log files
[Feature] #257:
slash fixtures
is nowslash list
, and learned the ability to list both fixtures and tests[Feature]: start_interactive_shell now automatically adds the contents of slash.g to the interactive namespace
[Feature] #268: Treat relative paths listed in suite files (-f) relative to the file’s location
[Feature] #269: Add option to specify suite files within suite files
0.13.0 22-02-2015
[Feature]: Slash now emits a console message when session_start handlers take too long
[Feature] #249: Added @slash.repeat decorator to repeat tests multiple times
[Feature] #140: Added
--repeat-each
command line argument to repeat each test multiple times[Feature] #258: Added
hooks.error_added
, a hook that is called when an error is added to a test result or to a global result. Also works when errors are added after the test has ended.[Feature] #261: Added a traceback to manually added errors (throush
slash.add_error
and friends)
0.12.0 01-02-2015
[Feature]: Add
slash.session.reporter.report_fancy_message
[Feature] #177: Added ‘slash fixtures’ command line utility to list available fixtures
0.11.0 06-01-2015
[Feature] #211: Added
log.last_session_dir_symlink
to create symlinks to log directory of the last run session[Feature] #220:
slash.add_cleanup
no longer receives arbitrary positional args or keyword args. The old form is still allowed for now but issues a deprecation warning.[Feature] #226: Implemented
slash.hooks.before_test_cleanups
.
0.10.0 15-12-2014
[Feature] #189: add add_success_only_cleanup
[Feature] #196: Add ‘slash version’ to display current version
[Feature] #199: A separate configuration for traceback verbosity level (
log.traceback_level
, also controlled via--tb=[0-5]
)[Feature] #203: Group result output by tests, not by error type
[Feature] #209: Test cleanups are now called before fixture cleanups
[Feature] #16: Added
slash.requires
decorator to formally specify test requirements[Feature] #214: Added
slash.nofixtures
decorator to opt out of automatic fixture deduction.
0.9.3 1-12-2014
[Bug] #204: Fixed a console formatting issue causing empty lines to be emitted without reason
0.9.2 24-11-2014
[Bug] #198: fix test_methodname accidentally starting with a dot
0.9.0 30-10-2014
0.8.0 12-10-2014
[Feature] #171: Add error times to console reports
[Feature] #160: Add option to serialize warnings to dicts
[Feature]: Log symlinks can now be relative paths (considrered relative to the logging root directory)
[Feature] #162: Test loading and other setup operations now happen before
session_start
, causing faster failing on simple errors[Feature] #163: Added
-k
for selecting tests by substrings[Feature] #159: Add optional ‘last failed’ symlink to point to last failed test log
[Feature] #167: Fixed erroneous behavior in which skipped tasks after using
-x
caused log symlinks to move[Feature]: removed the test contexts facility introduced in earlier versions. The implementation was partial and had serious drawbacks, and is inferior to fixtures.
[Feature] #127: py.test style fixture support, major overhaul of tests and loading code.
0.7.1 14-07-2014
[Bug]: Fixed error summary reporting
0.7.0 07-07-2014
[Feature] #144: Add option to colorize console logs in custom colors
[Feature] #149: Make console logs interact nicely with the console reporter non-log output
[Feature] #146: Add test id and error/failure enumeration in test details
[Feature] #145: Add option to save symlinks to the last session log and last test log
[Feature] #150: Add log links to results when reporting to console
[Feature] #137: Fixed parameter iteration across inheritence trees
[Feature]: Renamed
debug_hooks
todebug_hook_handlers
. Debugging hook handlers will only trigger for slash hooks.[Feature] #148: Detailed tracebacks now emitted to log file
[Feature] #152: Truncate long log lines in the console output
[Feature] #153: Report warnings at the end of sessions
0.6.1 27-05-2014
0.6.0 21-05-2014
[Feature]: Overhaul the reporting mechanism, make output more similar to py.test’s, including better error reporting.
[Feature] #128: Slash now loads tests eagerly, failing earlier for bad imports etc. This might change in the future to be an opt-out behavior (change back to lazy loading)
[Feature] #129: Overhaul rerunning logic (now called ‘resume’)
[Feature] #141: Add slash.utils.deprecated to mark internal facilities bound for removal
[Feature]: Added assertion introspection via AST rewrite, borrowed from pytest.
0.5.0 09-04-2014
[Feature] #132: Support for providing hook requirements to help resolving callback order (useful on initialization)
0.4.0 15-12-2013
[Feature] #115: Add session.logging.extra_handlers to enable adding custom handlers to tests and the session itself
[Feature] #120: Support multiple exception types in should.raise_exception
[Feature] #121: Support ‘append’ for CLI arguments deduced from config
[Feature] #116: Support ‘-f’ to specify one or more files containing lists of files to run
[Feature] #114: Support for fatal exception marks
0.3.0 18-11-2013
[Feature] #113: Add option to debug hook exceptions (-o debug.debug_hooks=yes)
0.2.0 20-10-2013
0.1.0 3-9-2013
[Feature] #75: Support matching by parameters in FQN, Support running specific or partial tests via FQN
[Feature]: Add should.be_empty, should.not_be_empty
[Feature] #69: Move slash.session to slash.core.session. slash.session is now the session context proxy, as documented
[Feature]: Documentation additions and enhancements
[Feature]: Coverage via coveralls
[Feature] #26: Support test rerunning via “slash rerun”
[Feature] #72: Clarify errors in plugins section
[Feature] #74: Enable local .slashrc file
[Feature] #45: Add option for specifying default tests to run
0.0.2 7-7-2013
[Feature] #5: add_critical_cleanup for adding cleanups that are always called (even on interruptions)
[Feature] #3: Handle KeyboardInterrupts (quit fast), added the test_interrupt hook
[Feature] #48:, #54: handle import errors and improve captured exceptions
[Feature]: Renamed slash.fixture to slash.g (fixture is an overloaded term that will maybe refer to test contexts down the road)
[Feature] #40:: Added test context support - you can now decorate tests to provide externally implemented contexts for more flexible setups
[Feature] #46:: Added plugin.activate() to provide plugins with the ability to control what happens upon activation