class_docstr: Test the SPSA optimizer.
docstr: Test execution of list of parameters of different sizes
  and not all require grad.
docstr_tok: ["Test","execution","of","list","of","parameters","of","different","sizes","and","not","all","require","grad","."]
code: def test_parameters_in_step(self):
      """Test execution of list of parameters of different sizes
      and not all require grad."""
      spsa_opt = qml.SPSAOptimizer(maxiter=10)
  
      @qml.qnode(qml.device("default.qubit", wires=1))
      def quant_fun(*variables):
          qml.RX(variables[0][1], wires=[0])
          qml.RY(variables[1][2], wires=[0])
          qml.RY(variables[2], wires=[0])
          return qml.expval(qml.PauliZ(0))
  
      inputs = [
          np.array((0.2, 0.3), requires_grad=True),
          np.array([0.4, 0.2, 0.4], requires_grad=False),
          np.array(0.1, requires_grad=True),
      ]
  
      res = spsa_opt.step(quant_fun, *inputs)
      assert isinstance(res, list)
      assert np.all(res[1] == inputs[1])
      assert np.all(res[0] != inputs[0])
  
imports: import pytest
  import pennylane
  from pennylane import numpy
label_desc: Use image node_id 12 for calling the TestSPSAOptimizer obj's underlying member method code with example usage: obj.test_parameters_in_step() and returns: qml