Tester¶
-
MLModule
¶ genre Test
author MeVis Medical Solutions AG
package MeVisLab/Standard
dll MLDiagnosis
definition mlDiagnosis.def see also TestInput
,FieldTracer
,CacheView
,Checksum
,CoreControl
,ModuleView
,RuntimeView
,Info
keywords automatic
,module
,testing
,tests
,diagnosis
,compatibility
,changes
Purpose¶
The module Tester
contains many tools to check modules for a number of typical programming errors, lazy programming, old style concepts, memory leaks, memory block exceeds and many more.
The Tester
also runs module checks so that a large number of module parameters and situations are covered which typically cannot be tested by hand.
Usage¶
- Create a
Tester
module. - Specify the modules your want to test. You can do that by creating a field connection from
Connect Modules from Here
to any field of the modules to be tested and then by pressingGet Connected Modules
to create the list of modules to be tested. Alternatively you can use the buttonGet Runtime Modules
to get all module types registered in the runtime type system orGet Instantiated Modules
to get the current module instances. - Select the tests to be applied in Tests to Run the Preferences Panel of the
Tester
module. - Use Test Presets to set some limit for testing times and for image sizes to be used.
- Exclude those modules in Do Not Test which shall not be tested.
- Use
Start Testing
/Stop Testing
and/orReset Tests
to apply the tests to the selected modules. - Have a look to the Report and the Messages fields for test results.
Parameter Fields¶
Field Index¶
Visible Fields¶
Connect Modules from Here¶
-
name:
moduleConnection
, type:
Trigger
¶ Connect any field of a module to be tested from this field.
The connection will make the connected module known to the
Tester
module. PressGet Connected Modules
after having established connections.
Get Connected Modules¶
-
name:
getConnectedModules
, type:
Trigger
¶ If pressed, the list of modules to be tested is being filled with connected modules.
Get Runtime Modules¶
-
name:
getRuntimeModules
, type:
Trigger
¶ If pressed, all modules registered to the runtime type system are being added to the list of modules to be tested.
Get Instantiated Modules¶
-
name:
getInstantiatedModules
, type:
Trigger
¶ If pressed, all instantiated modules are being added to the list of modules to be tested.
Max Voxels for Test Images¶
-
name:
imgSizeLimit
, type:
Integer
, default:
32768
¶ Sets the maximum number of voxels for test images to limit the complexity of the test.
Max Seconds for all Modules¶
-
name:
secsTotal
, type:
Integer
, default:
900
¶ Sets a limit of time for the testing of all modules.
Max Milliseconds Per Module¶
-
name:
mSecsPerModule
, type:
Integer
, default:
10000
¶ Sets a limit of time for a single module test.
Max Milliseconds Per Single Test¶
-
name:
mSecsPerTest
, type:
Integer
, default:
2500
¶ Sets a limit of time for a single test.
Try Memory Leak Detection¶
-
name:
tryMemoryLeakDetection
, type:
Bool
, default:
TRUE
¶ If checked, the
Tester
tries to detect memory leaks.
Start Testing¶
-
name:
startTesting
, type:
Trigger
¶ If pressed, the selected and configured tests are being started.
Do Not Test¶
-
name:
doNotTest
, type:
String
, default:
ErrorTest, Tester, Test, Control, Checksum
¶ Sets a list of modules that are excluded from being tested.
Test¶
-
name:
moduleView
, type:
String
, persistent:
no
¶ Shows a list of modules that are to be tested.
Test Messages (infoView)¶
-
name:
infoView
, type:
String
, persistent:
no
¶ Shows the messages that are generated by the tests.
Test Messages (reportView)¶
-
name:
reportView
, type:
String
, persistent:
no
¶ Shows detailed messages generated by the tests.
# Fatal Errors¶
-
name:
fatalInfos
, type:
Integer
, persistent:
no
¶ Shows the number of fatal errors reported by the ML.
# Infos¶
-
name:
informationInfos
, type:
Integer
, persistent:
no
¶ Shows the number of information messages reported by the ML.
# Warnings¶
-
name:
warningInfos
, type:
Integer
, persistent:
no
¶ Shows the number of warning messages reported by the ML.
# Hints¶
-
name:
hintInfos
, type:
Integer
, persistent:
no
¶ Shows the number of hint messages generated by the
Tester
.
# Notices¶
-
name:
noticeInfos
, type:
Integer
, persistent:
no
¶ Shows the number of notice messages generated by the
Tester
.
# Test Errors¶
-
name:
testErrorInfos
, type:
Integer
, persistent:
no
¶ Shows the number of test errors reported by the
Tester
.
# Test Warnings¶
-
name:
testWarningInfos
, type:
Integer
, persistent:
no
¶ Shows the number of test warnings reported by the
Tester
.
# Test Timeouts:¶
-
name:
timeoutInfos
, type:
Integer
, persistent:
no
¶ Shows the number of test timeouts reported by the
Tester
.
Enable Stability Tests¶
-
name:
enableStabilityTests
, type:
Trigger
¶ If pressed, the runtime stability tests are being enabled.
Enable Standard Compliance Tests¶
-
name:
enableStandardComplianceTests
, type:
Trigger
¶ If pressed, all standard compliance tests are being enabled.
Test Field Types¶
-
name:
testFieldTypes
, type:
Bool
, default:
TRUE
¶ If checked, the correct initialization of field types is being checked.
Test Field References¶
-
name:
testFieldReferences
, type:
Bool
, default:
TRUE
¶ If checked, it is tested whether fields use deprecated value references.
Test Field Styles¶
-
name:
testFieldStyles
, type:
Bool
, default:
TRUE
¶ If checked, the field styles are tested whether they comply to the standard.
Test Field Names¶
-
name:
testFieldNames
, type:
Bool
, default:
TRUE
¶ If checked, the field names are tested whether they comply to the standard.
Test Page Extents¶
-
name:
testPageExtents
, type:
Bool
, default:
TRUE
¶ If checked, it is tested if the page extents are set to reasonable values.
Test New Delete¶
-
name:
testNewDelete
, type:
Bool
, default:
TRUE
¶ If checked, each module is added to and then deleted from the network to check for memory leaks.
Test Instantiation¶
-
name:
testInstantiation
, type:
Bool
, default:
TRUE
¶ If checked, eacj module is instantiated on a network.
Test Field Touches¶
-
name:
testFieldTouches
, type:
Bool
, default:
TRUE
¶ If checked, all fields of the modules are being touched.
Test Multiple Input Images¶
-
name:
testMultipleInputImages
, type:
Bool
, default:
TRUE
¶ If checked, the module tests are performed with multiple, varying input images.
Touch Fields¶
-
name:
runMultipleInputImagesFieldTouches
, type:
Bool
, default:
TRUE
¶ If checked, the test enabled with the option
Test Multiple Input Images
performs atouch()
on all fields of a module after connecting an input image.
Request Data¶
-
name:
runMultipleInputImagesDataRequests
, type:
Bool
, default:
TRUE
¶ If checked, output images (if available) are requested from a module after attaching each input image while performing the test enable with the option
Test Multiple Input Images
.
Test Base Inputs WOTouch¶
-
name:
testBaseInputsWOTouch
, type:
Bool
, default:
TRUE
¶ If checked, different inputs derived from Base and a NULL object are connected to a Base input. No field is being touched but the memory is checked for leaks.