appium - 1.3.1
android - 4.4.2 real device
Windows 7
java client - 2.0.0
Issue not observed in appium 1.2.3
driver.findElement(MobileBy.AndroidUIAutomator(“new
UiSelector().resourceId("eWallet.Android:id/txtIMSI")”)).sendKeys(“789789789789789”);
driver.findElement(MobileBy.AndroidUIAutomator("new
UiSelector().resourceId("eWallet.Android:id/txtMSISDN")")).sendKeys(“527897897890”);
driver.findElement(MobileBy.AndroidUIAutomator("new
UiSelector().resourceId("eWallet.Android:id/txtDeviceId")")).sendKeys(“987987987987987”);
but o/p is as follows in device
7897897897898
5278978979
987987987987987
which is not expected for senkeys in step 1 an step 2
i.e., before performing sendkeys in step 2 its deleting text in step 1
and before performing sendkeys in step 3 its deleting text in step 2
Refer following server log
50859635
info: ← POST /wd/hub/session 303 4679.650 ms - 9
info: → GET /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635 {}
info: [debug] Responding to client with success: {“status”:0,“value”:{“platform”
:“LINUX”,“browserName”:“Android”,“platformVersion”:“4.4.2”,“webStorageEnabled”:f
alse,“takesScreenshot”:true,“javascriptEnabled”:true,“databaseEnabled”:false,“ne
tworkConnectionEnabled”:true,“locationContextEnabled”:false,“warnings”:{},“desir
ed”:{“appPackage”:“eWallet.Android”,“appActivity”:“ewallet.android.activities.Sp
lashActivity”,“platformVersion”:“4.4.2”,“platformName”:“Android”,“deviceName”:“N
exus 5”},“appPackage”:“eWallet.Android”,“appActivity”:“ewallet.android.activitie
s.SplashActivity”,“platformName”:“Android”,“deviceName”:“Nexus 5”},“sessionId”:"
ba251db1-2c9e-4ca1-9a3f-200250859635"}
info: ← GET /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635 200 3.997 ms
- 629 {“status”:0,“value”:{“platform”:“LINUX”,“browserName”:“Android”,“platformV
ersion”:“4.4.2”,“webStorageEnabled”:false,“takesScreenshot”:true,“javascriptEnab
led”:true,“databaseEnabled”:false,“networkConnectionEnabled”:true,“locationConte
xtEnabled”:false,“warnings”:{},“desired”:{“appPackage”:“eWallet.Android”,“appAct
ivity”:“ewallet.android.activities.SplashActivity”,“platformVersion”:“4.4.2”,“pl
atformName”:“Android”,“deviceName”:“Nexus 5”},“appPackage”:“eWallet.Android”,“ap
pActivity”:“ewallet.android.activities.SplashActivity”,“platformName”:“Android”,
“deviceName”:“Nexus 5”},“sessionId”:“ba251db1-2c9e-4ca1-9a3f-200250859635”}
info: → POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element {“us
ing”:“-android uiautomator”,“value”:“new UiSelector().resourceId("eWallet.Andro
id:id/txtIMSI")”}
info: [debug] Waiting up to 0ms for condition
info: [debug] Pushing command to appium work queue: [“find”,{“strategy”:“-androi
d uiautomator”,“selector”:“new UiSelector().resourceId("eWallet.Android:id/txtI
MSI")”,“context”:“”,“multiple”:false}]
info: [debug] [BOOTSTRAP] [debug] Got data from client: {“cmd”:“action”,“action”
:“find”,“params”:{“strategy”:“-android uiautomator”,“selector”:“new UiSelector()
.resourceId("eWallet.Android:id/txtIMSI")”,“context”:“”,“multiple”:false}}
info: [debug] [BOOTSTRAP] [debug] Got command of type ACTION
info: [debug] [BOOTSTRAP] [debug] Got command action: find
info: [debug] [BOOTSTRAP] [debug] Finding new UiSelector().resourceId(“eWallet.A
ndroid:id/txtIMSI”) using ANDROID_UIAUTOMATOR with the contextId: multiple: fal
se
info: [debug] [BOOTSTRAP] [debug] Parsing selector: new UiSelector().resourceId(
“eWallet.Android:id/txtIMSI”)
info: [debug] [BOOTSTRAP] [debug] UiSelector coerce type: class java.lang.String
arg: “eWallet.Android:id/txtIMSI”
info: [debug] [BOOTSTRAP] [debug] Using: UiSelector[RESOURCE_ID=eWallet.Android:
id/txtIMSI]
info: [debug] [BOOTSTRAP] [debug] Returning result: {“value”:{“ELEMENT”:“1”},“st
atus”:0}
info: [debug] Responding to client with success: {“status”:0,“value”:{“ELEMENT”:
“1”},“sessionId”:“ba251db1-2c9e-4ca1-9a3f-200250859635”}
info: ← POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element 200
32.110 ms - 87 {“status”:0,“value”:{“ELEMENT”:“1”},“sessionId”:“ba251db1-2c9e-4c
a1-9a3f-200250859635”}
info: → POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element/1/va
lue {“id”:“1”,“value”:[“789789789789789”]}
info: [debug] Pushing command to appium work queue: [“element:setText”,{“element
Id”:“1”,“text”:“789789789789789”,“replace”:false}]
info: [debug] [BOOTSTRAP] [debug] Got data from client: {“cmd”:“action”,“action”
:“element:setText”,“params”:{“elementId”:“1”,“text”:“789789789789789”,“replace”:
false}}
info: [debug] [BOOTSTRAP] [debug] Got command of type ACTION
info: [debug] [BOOTSTRAP] [debug] Got command action: setText
info: [debug] [BOOTSTRAP] [debug] Attempting to clear using UiObject.clearText()
.
info: [debug] [BOOTSTRAP] [debug] Updating class “class com.android.uiautomator.
core.UiDevice” to enable field “mUiAutomationBridge”
info: [debug] [BOOTSTRAP] [debug] Updating class “class com.android.uiautomator.
core.UiAutomatorBridge” to enable field “mInteractionController”
info: [debug] [BOOTSTRAP] [debug] Finding methods on class: class com.android.ui
automator.core.InteractionController
info: [debug] [BOOTSTRAP] [debug] Text remains after clearing, but it appears to
be hint text.
info: [debug] [BOOTSTRAP] [debug] Text not cleared. Assuming remainder is hint t
ext.
info: [debug] [BOOTSTRAP] [debug] Sending plain text to element: 789789789789789
info: [debug] [BOOTSTRAP] [debug] Returning result: {“value”:true,“status”:0}
info: [debug] Responding to client with success: {“status”:0,“value”:true,“sessi
onId”:“ba251db1-2c9e-4ca1-9a3f-200250859635”}
info: ← POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element/1/va
lue 200 5073.942 ms - 76 {“status”:0,“value”:true,“sessionId”:“ba251db1-2c9e-4ca
1-9a3f-200250859635”}
info: → POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element {“us
ing”:“-android uiautomator”,“value”:“new UiSelector().resourceId("eWallet.Andro
id:id/txtMSISDN")”}
info: [debug] Waiting up to 0ms for condition
info: [debug] Pushing command to appium work queue: [“find”,{“strategy”:“-androi
d uiautomator”,“selector”:“new UiSelector().resourceId("eWallet.Android:id/txtM
SISDN")”,“context”:“”,“multiple”:false}]
info: [debug] [BOOTSTRAP] [debug] Got data from client: {“cmd”:“action”,“action”
:“find”,“params”:{“strategy”:“-android uiautomator”,“selector”:“new UiSelector()
.resourceId("eWallet.Android:id/txtMSISDN")”,“context”:“”,“multiple”:false}}
info: [debug] [BOOTSTRAP] [debug] Got command of type ACTION
info: [debug] [BOOTSTRAP] [debug] Got command action: find
info: [debug] [BOOTSTRAP] [debug] Finding new UiSelector().resourceId(“eWallet.A
ndroid:id/txtMSISDN”) using ANDROID_UIAUTOMATOR with the contextId: multiple: f
alse
info: [debug] [BOOTSTRAP] [debug] Parsing selector: new UiSelector().resourceId(
“eWallet.Android:id/txtMSISDN”)
info: [debug] [BOOTSTRAP] [debug] UiSelector coerce type: class java.lang.String
arg: “eWallet.Android:id/txtMSISDN”
info: [debug] [BOOTSTRAP] [debug] Using: UiSelector[RESOURCE_ID=eWallet.Android:
id/txtMSISDN]
info: [debug] [BOOTSTRAP] [debug] Returning result: {“value”:{“ELEMENT”:“2”},“st
atus”:0}
info: [debug] Responding to client with success: {“status”:0,“value”:{“ELEMENT”:
“2”},“sessionId”:“ba251db1-2c9e-4ca1-9a3f-200250859635”}
info: ← POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element 200
491.873 ms - 87 {“status”:0,“value”:{“ELEMENT”:“2”},“sessionId”:“ba251db1-2c9e-4
ca1-9a3f-200250859635”}
info: → POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element/2/va
lue {“id”:“2”,“value”:[“527897897890”]}
info: [debug] Pushing command to appium work queue: [“element:setText”,{“element
Id”:“2”,“text”:“527897897890”,“replace”:false}]
info: [debug] [BOOTSTRAP] [debug] Got data from client: {“cmd”:“action”,“action”
:“element:setText”,“params”:{“elementId”:“2”,“text”:“527897897890”,“replace”:fal
se}}
info: [debug] [BOOTSTRAP] [debug] Got command of type ACTION
info: [debug] [BOOTSTRAP] [debug] Got command action: setText
info: [debug] [BOOTSTRAP] [debug] Attempting to clear using UiObject.clearText()
.
info: [debug] [BOOTSTRAP] [debug] Updating class “class com.android.uiautomator.
core.UiDevice” to enable field “mUiAutomationBridge”
info: [debug] [BOOTSTRAP] [debug] Updating class “class com.android.uiautomator.
core.UiAutomatorBridge” to enable field “mInteractionController”
info: [debug] [BOOTSTRAP] [debug] Finding methods on class: class com.android.ui
automator.core.InteractionController
info: [debug] [BOOTSTRAP] [debug] Text remains after clearing, but it appears to
be hint text.
info: [debug] [BOOTSTRAP] [debug] Text not cleared. Assuming remainder is hint t
ext.
info: [debug] [BOOTSTRAP] [debug] Sending plain text to element: 527897897890
info: [debug] [BOOTSTRAP] [debug] Returning result: {“value”:true,“status”:0}
info: [debug] Responding to client with success: {“status”:0,“value”:true,“sessi
onId”:“ba251db1-2c9e-4ca1-9a3f-200250859635”}
info: ← POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element/2/va
lue 200 5629.350 ms - 76 {“status”:0,“value”:true,“sessionId”:“ba251db1-2c9e-4ca
1-9a3f-200250859635”}
info: → POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element {“us
ing”:“-android uiautomator”,“value”:“new UiSelector().resourceId("eWallet.Andro
id:id/txtDeviceId")”}
info: [debug] Waiting up to 0ms for condition
info: [debug] Pushing command to appium work queue: [“find”,{“strategy”:“-androi
d uiautomator”,“selector”:“new UiSelector().resourceId("eWallet.Android:id/txtD
eviceId")”,“context”:“”,“multiple”:false}]
info: [debug] [BOOTSTRAP] [debug] Got data from client: {“cmd”:“action”,“action”
:“find”,“params”:{“strategy”:“-android uiautomator”,“selector”:“new UiSelector()
.resourceId("eWallet.Android:id/txtDeviceId")”,“context”:“”,“multiple”:false}}
info: [debug] [BOOTSTRAP] [debug] Got command of type ACTION
info: [debug] [BOOTSTRAP] [debug] Got command action: find
info: [debug] [BOOTSTRAP] [debug] Finding new UiSelector().resourceId(“eWallet.A
ndroid:id/txtDeviceId”) using ANDROID_UIAUTOMATOR with the contextId: multiple:
false
info: [debug] [BOOTSTRAP] [debug] Parsing selector: new UiSelector().resourceId(
“eWallet.Android:id/txtDeviceId”)
info: [debug] [BOOTSTRAP] [debug] UiSelector coerce type: class java.lang.String
arg: “eWallet.Android:id/txtDeviceId”
info: [debug] [BOOTSTRAP] [debug] Using: UiSelector[RESOURCE_ID=eWallet.Android:
id/txtDeviceId]
info: [debug] [BOOTSTRAP] [debug] Returning result: {“value”:{“ELEMENT”:“3”},“st
atus”:0}
info: [debug] Responding to client with success: {“status”:0,“value”:{“ELEMENT”:
“3”},“sessionId”:“ba251db1-2c9e-4ca1-9a3f-200250859635”}
info: ← POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element 200
586.792 ms - 87 {“status”:0,“value”:{“ELEMENT”:“3”},“sessionId”:“ba251db1-2c9e-4
ca1-9a3f-200250859635”}
info: → POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element/3/va
lue {“id”:“3”,“value”:[“987987987987987”]}
info: [debug] Pushing command to appium work queue: [“element:setText”,{“element
Id”:“3”,“text”:“987987987987987”,“replace”:false}]
info: [debug] [BOOTSTRAP] [debug] Got data from client: {“cmd”:“action”,“action”
:“element:setText”,“params”:{“elementId”:“3”,“text”:“987987987987987”,“replace”:
false}}
info: [debug] [BOOTSTRAP] [debug] Got command of type ACTION
info: [debug] [BOOTSTRAP] [debug] Got command action: setText
info: [debug] [BOOTSTRAP] [debug] Attempting to clear using UiObject.clearText()
.
info: [debug] [BOOTSTRAP] [debug] Updating class “class com.android.uiautomator.
core.UiDevice” to enable field “mUiAutomationBridge”
info: [debug] [BOOTSTRAP] [debug] Updating class “class com.android.uiautomator.
core.UiAutomatorBridge” to enable field “mInteractionController”
info: [debug] [BOOTSTRAP] [debug] Finding methods on class: class com.android.ui
automator.core.InteractionController
info: [debug] [BOOTSTRAP] [debug] Text remains after clearing, but it appears to
be hint text.
info: [debug] [BOOTSTRAP] [debug] Text not cleared. Assuming remainder is hint t
ext.
info: [debug] [BOOTSTRAP] [debug] Sending plain text to element: 987987987987987
info: [debug] [BOOTSTRAP] [debug] Returning result: {“value”:true,“status”:0}
info: [debug] Responding to client with success: {“status”:0,“value”:true,“sessi
onId”:“ba251db1-2c9e-4ca1-9a3f-200250859635”}
info: ← POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element/3/va
lue 200 5759.307 ms - 76 {“status”:0,“value”:true,“sessionId”:“ba251db1-2c9e-4ca
1-9a3f-200250859635”}
info: → POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element {“us
ing”:“-android uiautomator”,“value”:“new UiSelector().resourceId("eWallet.Andro
id:id/btnSave")”}
info: [debug] Waiting up to 0ms for condition
info: [debug] Pushing command to appium work queue: [“find”,{“strategy”:“-androi
d uiautomator”,“selector”:“new UiSelector().resourceId("eWallet.Android:id/btnS
ave")”,“context”:“”,“multiple”:false}]
info: [debug] [BOOTSTRAP] [debug] Got data from client: {“cmd”:“action”,“action”
:“find”,“params”:{“strategy”:“-android uiautomator”,“selector”:“new UiSelector()
.resourceId("eWallet.Android:id/btnSave")”,“context”:“”,“multiple”:false}}
info: [debug] [BOOTSTRAP] [debug] Got command of type ACTION
info: [debug] [BOOTSTRAP] [debug] Got command action: find
info: [debug] [BOOTSTRAP] [debug] Finding new UiSelector().resourceId(“eWallet.A
ndroid:id/btnSave”) using ANDROID_UIAUTOMATOR with the contextId: multiple: fal
se
info: [debug] [BOOTSTRAP] [debug] Parsing selector: new UiSelector().resourceId(
“eWallet.Android:id/btnSave”)
info: [debug] [BOOTSTRAP] [debug] UiSelector coerce type: class java.lang.String
arg: “eWallet.Android:id/btnSave”
info: [debug] [BOOTSTRAP] [debug] Using: UiSelector[RESOURCE_ID=eWallet.Android:
id/btnSave]
info: [debug] [BOOTSTRAP] [debug] Returning result: {“value”:{“ELEMENT”:“4”},“st
atus”:0}
info: [debug] Responding to client with success: {“status”:0,“value”:{“ELEMENT”:
“4”},“sessionId”:“ba251db1-2c9e-4ca1-9a3f-200250859635”}
info: ← POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element 200
480.783 ms - 87 {“status”:0,“value”:{“ELEMENT”:“4”},“sessionId”:“ba251db1-2c9e-4
ca1-9a3f-200250859635”}
info: → POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element/4/cl
ick {“id”:“4”}
info: [debug] Pushing command to appium work queue: [“element:click”,{“elementId
“:“4”}]
info: [debug] [BOOTSTRAP] [debug] Got data from client: {“cmd”:“action”,“action”
:“element:click”,“params”:{“elementId”:“4”}}
info: [debug] [BOOTSTRAP] [debug] Got command of type ACTION
info: [debug] [BOOTSTRAP] [debug] Got command action: click
info: [debug] [BOOTSTRAP] [debug] Returning result: {“value”:true,“status”:0}
info: [debug] Responding to client with success: {“status”:0,“value”:true,“sessi
onId”:“ba251db1-2c9e-4ca1-9a3f-200250859635”}
info: ← POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element/4/cl
ick 200 187.843 ms - 76 {“status”:0,“value”:true,“sessionId”:“ba251db1-2c9e-4ca1
-9a3f-200250859635”}
info: → POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element {“us
ing”:”-android uiautomator”,“value”:“new UiSelector().resourceId("eWallet.Andro
id:id/btnLogin")”}
info: [debug] Waiting up to 0ms for condition
info: [debug] Pushing command to appium work queue: [“find”,{“strategy”:“-androi
d uiautomator”,“selector”:“new UiSelector().resourceId("eWallet.Android:id/btnL
ogin")”,“context”:“”,“multiple”:false}]
info: [debug] [BOOTSTRAP] [debug] Got data from client: {“cmd”:“action”,“action”
:“find”,“params”:{“strategy”:“-android uiautomator”,“selector”:“new UiSelector()
.resourceId("eWallet.Android:id/btnLogin")”,“context”:“”,“multiple”:false}}
info: [debug] [BOOTSTRAP] [debug] Got command of type ACTION
info: [debug] [BOOTSTRAP] [debug] Got command action: find
info: [debug] [BOOTSTRAP] [debug] Finding new UiSelector().resourceId(“eWallet.A
ndroid:id/btnLogin”) using ANDROID_UIAUTOMATOR with the contextId: multiple: fa
lse
info: [debug] [BOOTSTRAP] [debug] Parsing selector: new UiSelector().resourceId(
“eWallet.Android:id/btnLogin”)
info: [debug] [BOOTSTRAP] [debug] UiSelector coerce type: class java.lang.String
arg: “eWallet.Android:id/btnLogin”
info: [debug] [BOOTSTRAP] [debug] Using: UiSelector[RESOURCE_ID=eWallet.Android:
id/btnLogin]
info: [debug] [BOOTSTRAP] [debug] Returning result: {“value”:“No element found”,
“status”:7}
info: [debug] Condition unmet after 556ms. Timing out.
info: [debug] Responding to client with error: {“status”:7,“value”:{“message”:“A
n element could not be located on the page using the given search parameters.”,"
origValue":“No element found”},“sessionId”:"ba251db1-2c9e-4ca1-9a3f-200250859635
"}
info: ← POST /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635/element 500
561.981 ms - 195
info: → DELETE /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635 {}
info: Shutting down appium session
info: [debug] Pressing the HOME button
info: [debug] executing: “E:\Automation\MobileAutomation\adt\adt-bundle\sdk\plat
form-tools\adb.exe” -s 077c35ee0ade546b shell “input keyevent 3”
info: [debug] Stopping logcat capture
info: [debug] Logcat terminated with code null, signal SIGTERM
info: [debug] [BOOTSTRAP] [debug] Got data from client: {“cmd”:“shutdown”}
info: [debug] [BOOTSTRAP] [debug] Got command of type SHUTDOWN
info: [debug] [BOOTSTRAP] [debug] Returning result: {“value”:“OK, shutting down”
,“status”:0}
info: [debug] Sent shutdown command, waiting for UiAutomator to stop…
info: [debug] [BOOTSTRAP] [debug] Closed client connection
info: [debug] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS: numtests=1
info: [debug] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS: stream=.
info: [debug] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS: id=UiAutomatorTestRun
ner
info: [debug] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS: test=testRunServer
info: [debug] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS: class=io.appium.andro
id.bootstrap.Bootstrap
info: [debug] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS: current=1
info: [debug] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS_CODE: 0
info: [debug] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS: stream=
info: [debug] [UIAUTOMATOR STDOUT] Test results for WatcherResultPrinter=.
info: [debug] [UIAUTOMATOR STDOUT] Time: 25.923
info: [debug] [UIAUTOMATOR STDOUT] OK (1 test)
info: [debug] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS_CODE: -1
info: [debug] UiAutomator shut down normally
info: [debug] Cleaning up android objects
info: [debug] Cleaning up appium session
info: [debug] Responding to client with success: {“status”:0,“value”:null,“sessi
onId”:“ba251db1-2c9e-4ca1-9a3f-200250859635”}
info: ← DELETE /wd/hub/session/ba251db1-2c9e-4ca1-9a3f-200250859635 200 774.19
0 ms - 76 {“status”:0,“value”:null,“sessionId”:“ba251db1-2c9e-4ca1-9a3f-20025085
9635”}