Амперсанд не поддерживается в методе Appium driver.get
В моем тесте нам нужно вызвать схему URL для целей диагностики, но метод не поддерживает &.
driver.get(abc-xx://qa-preview?adunit=banner)
это работает
driver.get(abc-xx://qa-preview?adunit=banner&lat=10)
когда я добавляю & это не работает и выдает следующее сообщение
org.openqa.selenium.WebDriverException: An unknown server-side error occurred while processing the command. Original error: Error attempting to start URI. Original error: Error: Error executing adbExec. Original error: 'Command '/Users/abc/Library/Android/sdk/platform-tools/adb -P 5037 -s 83f0374b42535532 shell am start -W -a android.intent.action.VIEW -d abc-xx\://qa-preview\?adunit\=banner\&ctg\=2280352\&flt\=0\&nwk\=54 com.abc.droid.qa' exited with code 127'; Stderr: '/system/bin/sh: com.abc.droid.qa: not found'; Code: '127' (WARNING: The server did not provide any stacktrace information)
Я закодировал URL-адрес и попытался пройти через него, но это не поддерживается в моем приложении. В нашем приложении для схемы поддерживается только обычный URL. Есть ли обходные пути для этой проблемы?
1 ответ
String url = "Your URL Containing &";
String url1 = url.trim();
String url2 = url1.replace(/&/g,"-");