code: def test_add_child():
      p = Parameter.create(
          name="test",
          type="group",
          children=[
              dict(name="ch1", type="bool", value=True),
              dict(name="ch2", type="bool", value=False),
          ],
      )
      with pytest.raises(ValueError):
          p.addChild(dict(name="ch1", type="int", value=0))
      existing = p.child("ch1")
      ch = p.addChild(
          dict(name="ch1", type="int", value=0), existOk=True
      )
      assert ch is existing
  
      ch = p.addChild(
          dict(name="ch1", type="int", value=0), autoIncrementName=True
      )
      assert ch.name() == "ch3"
  
imports: from functools import wraps
  import numpy
  import pyqtgraph
  import pytest
  from pyqtgraph import functions
  from pyqtgraph.parametertree import InteractiveFunction, Interactor, interact, RunOptions
  from pyqtgraph.parametertree import Parameter
  from pyqtgraph.parametertree.Parameter import PARAM_TYPES
  from pyqtgraph.parametertree.parameterTypes import GroupParameter
  from pyqtgraph.Qt import QtGui
label_desc: Use image node_id 2 for calling a global function with example usage: test_add_child() without return types