Appium 2.0 | XCUIElementTypePickerWheel | BadParametersError: The following required parameter is missing: ["text"]

Hi All, I am getting an error when trying to execute mobile app automation test after upgraded to Appium 2.0 with latest xcuitest driver.

My coding working fine with Appium 1.2.33 but it’s not working after upgraded to v2.0. May I know if everyone here can help for this? Appreciate if anyone can help on this. Thank You

List el = class_ios.AppiumIosAutomation.wo.getWd().findElements(MobileBy.className(“XCUIElementTypePickerWheel”));

	if(birthdate.length == 3) {
		el.get(2).setValue(birthdate[2]);
		el.get(1).setValue(birthdate[1]);
		el.get(0).setValue(birthdate[0]);

[debug] [XCUITestDriver@0c6b (7ca1f939)] Proxying [POST /elements] to [POST http://127.0.0.1:8100/session/26622B78-D05A-4C05-A863-927218897F1E/elements] with body: {“using”:“class name”,“value”:“XCUIElementTypePickerWheel”}
[debug] [XCUITestDriver@0c6b (7ca1f939)] Got response with status 200: {“value”:[{“ELEMENT”:“45130000-0000-0000-F002-000000000000”,“element-6066-11e4-a52e-4f735466cecf”:“45130000-0000-0000-F002-000000000000”},{“ELEMENT”:“46130000-0000-0000-F002-000000000000”,“element-6066-11e4-a52e-4f735466cecf”:“46130000-0000-0000-F002-000000000000”},{“ELEMENT”:“47130000-0000-0000-F002-000000000000”,“element-6066-11e4-a52e-4f735466cecf”:“47130000-0000-0000-F002-000000000000”}],“sessionId”:“26622B78-D05A-4C05-A863-927218897F1E”}
[debug] [XCUITestDriver@0c6b (7ca1f939)] Responding to client with driver.findElements() result: [{“element-6066-11e4-a52e-4f735466cecf”:“45130000-0000-0000-F002-000000000000”,“ELEMENT”:“45130000-0000-0000-F002-000000000000”},{“element-6066-11e4-a52e-4f735466cecf”:“46130000-0000-0000-F002-000000000000”,“ELEMENT”:“46130000-0000-0000-F002-000000000000”},{“element-6066-11e4-a52e-4f735466cecf”:“47130000-0000-0000-F002-000000000000”,“ELEMENT”:“47130000-0000-0000-F002-000000000000”}]
[HTTP] <-- POST /session/7ca1f939-73c7-4dec-bf02-8e56240b079f/elements 200 424 ms - 395
[HTTP]
[HTTP] --> POST /session/7ca1f939-73c7-4dec-bf02-8e56240b079f/appium/element/47130000-0000-0000-F002-000000000000/value
[HTTP] {“id”:“47130000-0000-0000-F002-000000000000”,“value”:“1978”}
[debug] [XCUITestDriver@0c6b (7ca1f939)] Encountered internal error running command: BadParametersError: The following required parameter is missing: [“text”]
[debug] [XCUITestDriver@0c6b (7ca1f939)] Known required parameters are: [“text”]
[debug] [XCUITestDriver@0c6b (7ca1f939)] You have provided: [“id”,“value”]
[debug] [XCUITestDriver@0c6b (7ca1f939)] at checkParams (/usr/local/lib/node_modules/appium/node_modules/@appium/base-driver/lib/protocol/protocol.js:159:9)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at asyncHandler (/usr/local/lib/node_modules/appium/node_modules/@appium/base-driver/lib/protocol/protocol.js:368:7)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at /usr/local/lib/node_modules/appium/node_modules/@appium/base-driver/lib/protocol/protocol.js:518:15
[debug] [XCUITestDriver@0c6b (7ca1f939)] at Layer.handle [as handle_request] (/usr/local/lib/node_modules/appium/node_modules/express/lib/router/layer.js:95:5)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at next (/usr/local/lib/node_modules/appium/node_modules/express/lib/router/route.js:144:13)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at Route.dispatch (/usr/local/lib/node_modules/appium/node_modules/express/lib/router/route.js:114:3)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at Layer.handle [as handle_request] (/usr/local/lib/node_modules/appium/node_modules/express/lib/router/layer.js:95:5)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at /usr/local/lib/node_modules/appium/node_modules/express/lib/router/index.js:284:15
[debug] [XCUITestDriver@0c6b (7ca1f939)] at param (/usr/local/lib/node_modules/appium/node_modules/express/lib/router/index.js:365:14)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at param (/usr/local/lib/node_modules/appium/node_modules/express/lib/router/index.js:376:14)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at param (/usr/local/lib/node_modules/appium/node_modules/express/lib/router/index.js:376:14)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at Function.process_params (/usr/local/lib/node_modules/appium/node_modules/express/lib/router/index.js:421:3)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at next (/usr/local/lib/node_modules/appium/node_modules/express/lib/router/index.js:280:10)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at logger (/usr/local/lib/node_modules/appium/node_modules/morgan/index.js:144:5)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at Layer.handle [as handle_request] (/usr/local/lib/node_modules/appium/node_modules/express/lib/router/layer.js:95:5)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at trim_prefix (/usr/local/lib/node_modules/appium/node_modules/express/lib/router/index.js:328:13)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at /usr/local/lib/node_modules/appium/node_modules/express/lib/router/index.js:286:9
[debug] [XCUITestDriver@0c6b (7ca1f939)] at Function.process_params (/usr/local/lib/node_modules/appium/node_modules/express/lib/router/index.js:346:12)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at next (/usr/local/lib/node_modules/appium/node_modules/express/lib/router/index.js:280:10)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at /usr/local/lib/node_modules/appium/node_modules/body-parser/lib/read.js:137:5
[debug] [XCUITestDriver@0c6b (7ca1f939)] at AsyncResource.runInAsyncScope (node:async_hooks:199:9)
[debug] [XCUITestDriver@0c6b (7ca1f939)] at invokeCallback (/usr/local/lib/node_modules/appium/node_modules/raw-body/index.js:238:16)
[debug] [W3C] Bad parameters: BadParametersError: The following required parameter is missing: [“text”]
[debug] [W3C] Known required parameters are: [“text”]
[debug] [W3C] You have provided: [“id”,“value”]

You must also update the client

Hi, thanks for your reply. However, I am new in appium. Can you please advise what is the step(s) or any article I can refer to for this update? Appreciate your help. Thank You