Как перехватить текст сообщения об ошибке в appium - PullRequest
0 голосов
/ 06 июля 2018

Screenshot of error message

UI Automator Capture

Сообщение об ошибке напротив поля EditText.У нас нет прямого локатора, указывающего на сообщение об ошибке.Кто-нибудь может подсказать, какой вариант мы должны обработать в appium.

Ответы [ 2 ]

0 голосов
/ 10 июля 2018

Попробуйте этот метод, если вы не можете подтвердить сообщение об ошибке в поле EditText.

  1. Запуск текстового сообщения на экране
  2. Снимки экрана
  3. Преобразовать изображение в текстовый файл

    def assettoast(string)
     sname = (0...8).map { (65 + rand(26)).chr }.join
     $driver.driver.save_screenshot("#{sname}")
    
     #Make sure tesseract is installed in the system. If not you can install using "brew install tesseract" in mac
     system ("tesseract #{sname} #{sname}")
    
     text_file="#{sname}.txt"
     var= get_string_from_file(string, text_file)
     raise if var != true
    end
    
  4. Проверить, есть ли сообщение об ошибке в текстовом файле

    def get_string_from_file(word, filename)
     File.readlines(filename).each do |line|
     return true if line.include?(word)
     end
    end
    
0 голосов
/ 09 июля 2018

Нет, вы получите, используя uiautomatorviewer и оригинальный UiAutomator от Google. Проверьте старую резьбу

Тем не менее, вы можете попробовать собственную реализацию Appium UiAutomator2 и Инспектор рабочего стола Appium , возможно, это будет анализировать ошибку.

В противном случае появится новая конечная точка аппиума для сравнения изображений:

/session/:sessionId/appium/compare_images

Вы можете использовать его для проверки ошибки на экране

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...