如何测试赋予ListView的highlight属性的组件?

时间:2019-06-21 13:28:02

标签: qt qml qtestlib qtest

我正在编写一个看起来或多或少像这样的组件的测试:

FocusScope {
  property ...

  id: root
  width: parent.width

  Component {
    id: focusMarker

    Item {
      z: 100

      Rectangle {
        objectName: "focusMarker"
        visible: root.focus
        //...
      }
    }
  }

  ListView {
    id: sliderView
    objectName: "sliderView"
    highlight: focusMarker
    highlightRangeMode: ListView.ApplyRange
    //...
  }
}

在进行“焦点标记”部分的测试时,我似乎并没有接触focusMarker


  function test_focusMarker() {
    var obj = createTemporaryObject(slider, testCase, {visible: true});
    var focusMarker = findChild(obj, "focusMarker");
    verify(focusMarker)
  }

它返回FAIL! : qmltestrunner::<Slider />::test_focusMarker() 'verify()' returned FALSE. ()。我肯定会缺少一些东西,但我不知道该怎么办。也许这与以下事实有关:我需要关注一个重点项目才能显示出来并进行测试。但是我真的不知道该怎么做。非常感谢您的帮助:)希望我的问题很清楚。

0 个答案:

没有答案