После того, как я обновил calabash-android с 0.4.18 до 0.4.20, функция set_text в моем скрипте ничего не делает, я не могу установить текст для текстового поля Usename и Password. Скрипт по-прежнему отлично работает с Calabash-android 0.4.18. Изучив исходный код библиотеки, я обнаружил, что есть различия между функцией set_text версии библиотеки 0.4.18 и 0.4.20. Вот 2 фрагмента кода:
C:\Ruby193\lib\ruby\gems\1.9.1\gems\calabash-android-0.4.18\lib\calabash-android\operation.rb
def set_text(uiquery, txt)
raise "Currently queries are only supported for webviews" unless uiquery.start_with? "webView"
uiquery.slice!(0, "webView".length)
if uiquery =~ /(css|xpath):\s*(.*)/
r = performAction("set_text", $1, $2, txt)
JSON.parse(r["message"])
else
raise "Invalid query #{uiquery}"
end
end
C:\Ruby193\lib\ruby\gems\1.9.1\gems\calabash-android-0.4.20\lib\calabash-android\operation.rb
def set_text(uiquery, txt)
view,arguments = uiquery.split(" ",2)
raise "Currently queries are only supported for webviews" unless view.downcase == "webview"
if arguments =~ /(css|xpath):\s*(.*)/
r = performAction("set_text", $1, $2, txt)
else
raise "Invalid query #{arguments}"
end
end
У кого-нибудь есть такая же проблема? Пожалуйста помоги мне с этим.
Спасибо.