Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-111628

QTest outputs UnknownTestFunction() in the logs and illegal XML in the logfiles

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: P1: Critical P1: Critical
    • None
    • 6.4.2
    • Testing: QuickTest
    • None
    • Foundation PM Staging

      This bug is for fixing QTest to not allow this to happen

      In this integration of qtopcua, testing on MacOS MacOS_11 (clang-x86_64):

      Testing tst_opcua outputs "UnknownTestFunc()" in the logs:

      agent:2023/03/01 07:44:23 build.go:403: 4: ********* Start testing of opcua *********
      agent:2023/03/01 07:44:23 build.go:403: 4: Config: Using QtTest library 6.4.3, Qt 6.4.3 (x86_64-little_endian-lp64 shared (dynamic) release build; by Apple LLVM 14.0.0 (clang-1400.0.29.202)), macos 11.6
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Create String Node Id::initTestCase()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Create GUID Node Id::initTestCase()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Create GUID Node Id::test_nodeTest()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Create Opaque Node Id::initTestCase()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Create Opaque Node Id::test_nodeTest()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Create Integer Node Id::initTestCase()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Create Integer Node Id::test_nodeTest()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Write Value Node with Multiple Listeners::initTestCase()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Emitting signals on node changes::initTestCase()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Node with namespace in Id::initTestCase()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Node with namespace in Id::test_nodeTest()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Standard attributes on variable node::initTestCase()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Node timestamps::initTestCase()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Node timestamps::test_nodeTest()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Node timestamps::cleanupTestCase()
      agent:2023/03/01 07:44:23 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Assign int value to double node::initTestCase()
      agent:2023/03/01 07:44:25 build.go:403: 4: BPASS  : opcua::AbsoluteNodeTest: open62541: Assign int value to double node::test_nodeTest()
      agent:2023/03/01 07:44:25 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Assign int value to double node::cleanupTestCase()
      agent:2023/03/01 07:44:26 build.go:403: 4: PASS   : opcua::UnknownTestFunc()
      agent:2023/03/01 07:44:26 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Standard attributes on variable node::cleanupTestCase()
      agent:2023/03/01 07:44:26 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Node with namespace in Id::cleanupTestCase()
      agent:2023/03/01 07:44:26 build.go:403: 4: PASS   : opcua::UnknownTestFunc()
      agent:2023/03/01 07:44:26 build.go:403: 4: PASS   : opcua::AbsoluteNodeTest: open62541: Emitting signals on node changes::cleanupTestCase()
      

      and illegal XML (TestFunction nested inside TestFunction) in the testlog file generated by QTest:

      <TestFunction name="AbsoluteNodeTest: open62541: Assign int value to double node::cleanupTestCase">
      <Incident type="pass" file="" line="0"/>
      <Duration msecs="0.079274"/>
      </TestFunction>
      <Incident type="pass" file="" line="0"/>
      

      In the snippet above the <Incident> appears to be outside of <TestFunction>, which is definitely not allowed. However, upon closer inspection, several lines above there are many <TestFunction> tags that open and never close. See attached XML file, but keep in mind it's hard to detect because the indentation is not increasing with the nested tags.

        1. tst_opcua.xml
          76 kB
          Dimitrios Apostolou
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            mitch_curtis Mitch Curtis
            jimis Dimitrios Apostolou
            Vladimir Minenko Vladimir Minenko
            Alex Blasche Alex Blasche
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:

                There are no open Gerrit changes