Releases: morganstanley/testplan
Development Build
25.3.0
.. _rev_25.3.0:
25.3.0 (2025-03-25)
-
:changed:
Changed
Change Testplan exported JSON report structure to reduce report size.- Remove unused report entry fields.
fix_spec_path
.status_override
andstatus_reason
in case they are empty.line_no
,code_context
andfile_path
if--code
is not enabled.env_status
,part
,strict_order
andhost
depending on report category.
- Remove unused assertion entry fields
category
andflag
if they areDEFAULT
. - Merge assertion entry fields
utc_time
andmachine_time
into a unix timestamp fieldtimestamp
, and store timezone info in parent Test-level report under keytimezone
. - Replace ISO 8601 time string with unix timestamp in all
timer
fields, and add atimezone
field to Testplan-level report as well. - Update data structure of several serialized assertion entries.
- Delta encode level info of
flattened_dict
fields ofDictLog
andFixLog
entries. - Delta encode level info of
comparison
fields ofDictMatch
andFixMatch
entries. - Delta encode level info of nested
comparison
fields ofDictMatchAll
andFixMatchAll
entries, remove extra nesting ofmatches
as well. - Preserve abbreviations of match status of
DictMatch
,FixMatch
,DictMatchAll
andFixMatchAll
entries, i.e.p
instead ofPassed
,f
instead ofFailed
,i
instead ofIgnored
. - Remove
indices
field ofTableLog
entries.
- Delta encode level info of
- Remove unused report entry fields.
-
:changed:
Changed
Fix releaseherald documentation -
:deprecated:
Deprecated
Support for Python 3.7 and 3.8 is deprecated and will be removed soon. -
:changed:
Changed
Handle potential race condition during resource monitor termination -
:changed:
Changed
Improve error logging for :py:class:~testplan.common.remote.remote_service.RemoteService
; fix incorrect imitated workspace on remote due to leftover symlink from previous run. -
:changed:
Changed
Remove Sphinx and other packages for building document from Testplan's dependencies. -
:changed:
Changed
Copy permission bits for the copied binary in App.
25.1.0
.. _rev_25.1.0:
25.1.0 (2025-01-20)
-
:changed:
Changed
Checks if a process exists by reading the/proc/<pid>/stat
. -
:changed:
Changed
Support :py:class:RemoteDriver <testplan.common.remote.remote_driver.RemoteDriver>
in dependency graph of test environment (thedependencies
parameter). -
:changed:
Changed
Use lazy import for Matplotlib and move cache to runpath. -
🆕
New
Added--code
flag to collect code context for the assertions. Code context one-liner will be displayed on the web UI if enabled.
Note that file path information is no longer collected by default. To collect file path information, enable code context. -
🆕
New
Add a new summary page on resource view to show the task allocation per host. -
:changed:
Changed
Refactor the stop logic of :py:class:App <~testplan.testing.multitest.driver.app.App>
driver for faster environment shutdown. Rename parametersigint_timeout
tostop_timeout
. Add a new parameterstop_signal
for custom stop signals, its default valueNone
invokesterminate
method to stop subprocess, i.e. sendingSIGTERM
signal to subprocess on Linux.
Environment will fail to stop if subprocess doesn't terminate within the default 5-secondstop_timeout
for graceful shutdown. Increasestop_timeout
or changestop_signal
(to maybeSIGKILL
on Linux) could resolve this issue. -
:changed:
Changed
Make sure when stop() is called on App type driver, we clean up all orphaned processes. -
:changed:
Changed
If :py:class:App <~testplan.testing.multitest.driver.app.App>
driver times out during shutdown or leaves orphaned processes after shutdown, Testplan will now emit a warning and perform a forced cleanup instead of failing the tests. -
:changed:
Changed
Increase the number of Remote worker setup thread. -
:changed:
Changed
Fix interactive mode crashing issue when loading a namespace package. (It is still not supported to reload namespace packages.)SyntaxError
will no longer be suppressed during interactive mode code reloading. -
:changed:
Changed
Fix incorrect early stop detection logic. -
:changed:
Changed
Swapped Run and Reload buttons on the interactive UI by user request. -
:changed:
Changed
Use a new JSON libraryorjson
to improve performance when using Python 3.8 or later versions. -
:changed:
Changed
Limit the length of parameterization testcase name to 255 characters. If the name length exceeds 255 characters, index-suffixed names (e.g.,{func_name} 1
,{func_name} 2
) will be used. -
🆕
New
Testplan now includes its own version in generated report. -
:changed:
Changed
JSONExporter
will log a "file not found" warning in the log instead of raising an exception. -
:changed:
Changed
Fixed an issue where enabling Status icons crashed the report when a test was marked as XFAIL. -
:changed:
Changed
Updateorjson
dumping option to allow serializingnumpy
objects.
24.9.2
.. _rev_24.9.2: