Documentation/Widget testing

From Commontk
Jump to navigationJump to search
Home < Documentation < Widget testing

Back to CTK Documentation

Overview

Testing of both CTK widgets and application built on top of CTK could leverage the capabilities offered by the QtTesting library developed by Paraview folks.


If the option CTK_USE_QTTESTING is enabled, the build system will:

  • Download external project QtTesting
  • Include the event translator and player required for custom CTK widgets. (Located in the same folder as their associated widget sources)
  • Include the class ctkEventTranslaterPlayerWidget into CTKWidgets library
  • If BUILD_TESTING is enabled: CTK widgets EventTranslatorTests will be compiled. These tests will use ctkEventTranslaterPlayerWidget and ensure that events associated with CTK widgets can be properly recorded and played.


Note Note: Option CTK_USE_QTTESTING will be automatically enabled if BUILD_TESTING is ON

Milestones

  1. Integration: What and where. Yes check.png
  2. Integrate QtTesting has an external projects Yes check.png
  3. Implement ctkEventTranslaterPlayerWidget Znak A-14.png
  4. Create custom translator/player if needed Znak A-14.png
  5. Implement widgets EventTranslatorTests Znak A-14.png

Player/Translators Widget Testing

CTKWidgets
Widgets State Priority Notes
ctkActionsWidget Yes check.png
ctkAddRemoveComboBox Yes check.png
ctkAxesWidget Yes check.png
ctkBasePopupWidget X mark.png +++
ctkButtonGroup Yes check.png
ctkCheckableComboBox Znak A-14.png + Implemented event translator/player
ctkCheckableHeaderView Znak A-14.png ++ Implemented event translator/player
ctkCheckBoxPixmaps X mark.png -- Not used in Slicer
ctkCheckablePushButton Yes check.png -- Not used in Slicer
ctkComboBox Yes check.png
ctkCompleter X mark.png -
ctkCollapsibleButton Yes check.png ++
ctkCollapsibleGroupBox Yes check.png ++
ctkColorDialog X mark.png ++
ctkColorPickerButton Yes check.png QSpinBox issue if used
ctkConsole Yes check.pngZnak A-14.png May have a problem with the command
ctkConfirmExitDialog X mark.png -
ctkCoordinatesWidget Yes check.pngZnak A-14.png Problem with the QSpinBox
ctkCrosshairLabel X mark.png -
ctkDateRangeWidget Znak A-14.png Problem with QDateTimer
ctkDirectoryButton Yes check.pngZnak A-14.png Value OK but no dialog
ctkDoubleRangeSlider Yes check.png
ctkDoubleSlider Yes check.png
ctkDynamicSpacer X mark.png -
ctkErrorLogStatusMessageHandler Yes check.png --- Not a Widget
ctkErrorLogWidget X mark.png ---
ctkExpandButton Yes check.png
ctkFileDialog Znak A-14.png
ctkFittedTextBrowser Yes check.png -- This widget just display text.
ctkFlowLayout Yes check.png -- Layout are not tested through the event translator/player mechanism
ctkFontButton Yes check.pngZnak A-14.png QComboBox doesn't change the font
ctkIconEnginePlugin Yes check.png -- Plugin are not tested through the event translator/player mechanism
ctkLayoutManager X mark.png
ctkMaterialPropertyPreviewLabel X mark.png Not sure if something is requiered since it seems to be a label
ctkMaterialPropertyWidget Yes check.pngZnak A-14.png QSpin issue
ctkMatrixWidget Yes check.pngZnak A-14.png QSpin issue + Name QSpin issue : EventTranslator ?
ctkMenuButton Yes check.png
ctkMenuComboBox Znak A-14.pngX mark.png +++ Implemented Event Translator/Player
ctkModalityWidget Yes check.png
ctkPathLineEdit Znak A-14.png ++ Issue with the Event Player (QComboBox)
ctkPixmapIconEngine X mark.png ++
ctkPopupWidget Znak A-14.png +
ctkQImageView X mark.png ---
ctkRangeSlider Yes check.png
ctkRangeWidget Yes check.pngZnak A-14.png QDoubleSpinBox issue
ctkScreenshotDialog X mark.png -
ctkSearchBox Yes check.png
ctkSettings X mark.png +
ctkSettingsDialog X mark.png +
ctkSettingsPanel X mark.png +
ctkSignalMapper Yes check.png This object is not a widget and doesn't have to be tested through the event translator/player mechanism
ctkSimpleLayoutManager X mark.png
ctkSliderWidget Yes check.pngZnak A-14.png QSpinBox Issue
ctkTestApplication Yes check.png This is a utility class. Shouldn't be tested using the event translator/player mechanism
ctkThumbnailListWidget X mark.png --
ctkThumbnailWidget X mark.png --
ctkToolTipTrapper Yes check.png This is a utility class. Shouldn't be tested using the event translator/player mechanism
ctkTransferFunctionBarsItem X mark.png -
ctkTransferFunctionControlPointsItem X mark.png -
ctkTransferFunctionGradientItem X mark.png -
ctkTransferFunctionItem X mark.png -
ctkTransferFunctionScene X mark.png -
ctkTransferFunctionView X mark.png -
ctkTreeComboBox Znak A-14.png + Implemented event translator/player
ctkWidgetsUtils Yes check.png This is a utility class. Shouldn't be tested using the event translator/player mechanism
ctkWorkflowAbstractPagedWidget X mark.png -
ctkWorkflowButtonBoxWidget X mark.png -
ctkWorkflowGroupBox X mark.png -
ctkWorkflowStackedWidget X mark.png -
ctkWorkflowTabWidget X mark.png -
ctkWorkflowWidget X mark.png -
ctkWorkflowWidgetStep X mark.png -

Screenshots