android / android/testing-samples

UiObject2 referring to wrong element

Offen
#113 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
not sample issue
Vorherrschende Sprache
Java
Sterne
9.3k
Forks
3.6k
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Referring to previously created `UiObject2` object which is not exist in the screen (in the same activity) pointing to a random element instead of throwing `StaleObjectException`.

Example code snippet:

```
UiObject2 elementInScrollView = mDevice.findObject(By.desc("Auto Complete"));
elementInScrollView.getText();
//returns "Auto Complete"

//scroll down to make sure that "Auto Complete" not present in the screen
mDevice.swipe(100, 400, 100, 50, 100);

elementInScrollView.getText();
//returns some random element text in the screen ex: List

mDevice.pressBack();
elementInScrollView.getText();
//throws `StaleObjectException`
```

Device API Level: 23
AUT: API Demos(Inbuilt app)

I suspect something wrong to `AccessibilityNodeInfo` [here](https://github.com/android/platform_frameworks_base/blob/master/core/java/android/view/accessibility/AccessibilityNodeInfo.java#L772) when `getAccessibilityNodeInfo` called from [UiObject2](https://android.googlesource.com/platform/frameworks/uiautomator/+/android-support-test/src/main/java/android/support/test/uiautomator/UiObject2.java#625)

PFA screenshot for the functional understanding.

![uiobject2 issue](https://cloud.githubusercontent.com/assets/4507565/19114424/8fc47cc2-8b2b-11e6-94d6-3c8925193213.png)

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Reproduzieren Sie das Verhalten auf API level 23 anhand des API Demos-Beispiels und des im Bericht verlinkten vorhandenen UiObject2- und AccessibilityNodeInfo-Codes. Prüfen Sie, warum ein zuvor gefundenes Objekt nach dem Scrollen ein anderes Element zurückgibt; abgeschlossen ist die Aufgabe, wenn das fehlende Objekt StaleObjectException auslöst, anstatt nicht zugehörigen Text zurückzugeben.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
android, java
Bereich
mobile, testing-qa
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.