Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Bug: Two extra spaces in capability "systemPort ," makes it bug prone when trying to fetch value for this key. I was fetching this value for "systemPort" without spaces and got null. With space, got right result.

Offen
#1,532 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 5 Tagen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
25/100
Issue-Typ
Bug
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
java
Bereich
mobile-dev

Rechercherichtung

Beginne damit, das Verhalten in der gezeigten freeDevice-Methode zu reproduzieren, indem du AppiumDriver.getCapabilities().getCapability("systemPort") mit der Version vergleichst, die nachgestellte Leerzeichen enthält. Verfolge, wie Capability-Namen zurückgegeben und nachgeschlagen werden; abgeschlossen ist es, wenn der Schlüssel ohne Leerzeichen den Systemport abruft und der gemeldete Capability-Name keine nachgestellten Leerzeichen mehr enthält.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

The problem

Appium capability "systemPort " has extra spaces in the end. I was trying to fetch this capability based on the key "systemPort " without spaces and was getting null. On careful analysis I saw there were extra spaces after text "systemPort " and with adding those, I could fetch system port.

Below is an example.
[INFO] 2021-10-17 13:26:27,260 AvailableDevices: all available capability names: [app, appPackage, appWaitActivity, automationName, avd, avdArgs, avdLaunchTimeout, avdReadyTimeout, databaseEnabled, desired, deviceApiLevel, deviceManufacturer, deviceModel, deviceName, deviceScreenDensity, deviceScreenSize, deviceUDID, javascriptEnabled, locationContextEnabled, networkConnectionEnabled, pixelRatio, platform, platformName, platformVersion, statBarHeight, systemPort , takesScreenshot, udid, viewportRect, warnings, webStorageEnabled]

Details

While trying to fetch systemPort with extra spaces. results in correct value (see below).
public static void freeDevice(AppiumDriver driver){ Capabilities capabilities = driver.getCapabilities(); log.info("capabilities: {}", capabilities); log.info("avd: {}", capabilities.getCapability("avd")); log.info("udid: {}", capabilities.getCapability("udid")); log.info("systemPort: {}", capabilities.getCapability("systemPort ")); log.info("all available capability names: {}", capabilities.getCapabilityNames()); }

[INFO] 2021-10-17 13:26:27,259 AvailableDevices: avd: Pixel_3_API_31 [INFO] 2021-10-17 13:26:27,259 AvailableDevices: udid: emulator-5554 [INFO] 2021-10-17 13:26:27,259 AvailableDevices: systemPort: 8200 [INFO] 2021-10-17 13:26:27,260 AvailableDevices: all available capability names: [app, appPackage, appWaitActivity, automationName, avd, avdArgs, avdLaunchTimeout, avdReadyTimeout, databaseEnabled, desired, deviceApiLevel, deviceManufacturer, deviceModel, deviceName, deviceScreenDensity, deviceScreenSize, deviceUDID, javascriptEnabled, locationContextEnabled, networkConnectionEnabled, pixelRatio, platform, platformName, platformVersion, statBarHeight, systemPort , takesScreenshot, udid, viewportRect, warnings, webStorageEnabled]

Without these extra spaces in the field "systemPort ", the systemPort is returned as null

Code To Reproduce Issue [ Good To Have ]

Use below method and you can see that when you dont give extra spaces in systemPort, you will get null as returned value.

 public static void freeDevice(AppiumDriver driver){
        Capabilities capabilities = driver.getCapabilities();
        log.info("capabilities: {}", capabilities);
        log.info("avd: {}", capabilities.getCapability("avd"));
        log.info("udid: {}", capabilities.getCapability("udid"));
        log.info("systemPort: {}", capabilities.getCapability("systemPort"));
        log.info("all available capability names: {}", capabilities.getCapabilityNames());
    }
Vorherrschende Sprache
Java
Sterne
1.3k
Forks
755
Ø Merge
5 T. 14 Std.
Gemergte PRs (30 T.)
8

Entwicklungsumgebung

  • Kein Dockerfile und keine Docker-Compose-Datei
  • Hat eine Pull-Request-Vorlage
  • Kein Beitragsleitfaden

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus appium/java-client

Alle Issues in appium/java-client

Ähnliche Issues

Weitere Issues zu Java

Neue Issues direkt in Ihr Postfach

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