4 место Управление любыми Android приложениями на смартфоне из ZP

irving zisman

Client
Регистрация
18.05.2017
Сообщения
226
Благодарностей
28
Баллы
28
А как сделать несколько свайпов друг за другом, в промежутке от 3 до 7 раз? Т.е мне нужно свайпнуть строго 3,4,5,6 или 7 раз вниз. Вот к примеру код на свайп из 5 раз, но как из этого сделать рандом на 3-7 свайпов?

Код:
            Size size = driver.Manage().Window.Size;
            Point start = new Point((int)(size.Width * 0.5), (int)(size.Height * 0.5));
            Point end = new Point((int)(size.Width * 0.5), (int)(size.Height * 0.8));
         
            driver.Swipe(start.X, start.Y, end.X, end.Y, 500);
            System.Threading.Thread.Sleep(100);
            driver.Swipe(start.X, start.Y, end.X, end.Y, 500);
            System.Threading.Thread.Sleep(100);
            driver.Swipe(start.X, start.Y, end.X, end.Y, 500);
            System.Threading.Thread.Sleep(100);
            driver.Swipe(start.X, start.Y, end.X, end.Y, 500);
            System.Threading.Thread.Sleep(100);
            driver.Swipe(start.X, start.Y, end.X, end.Y, 500);
Код:
int x = new Random().Next(3,7);
for (int i = 0; i < x;i++)
{
driver.Swipe(start.X, start.Y, end.X, end.Y, 500);
}
 
  • Спасибо
Реакции: avtostopshik

smotrimail

Client
Регистрация
06.02.2017
Сообщения
36
Благодарностей
6
Баллы
8
Опять за помощью.
Нужно отследить элемент по wait.Until().
По xpath вылазит ошибка Failed to Dump Window Hierarchy, по id ошибки нет.
Но поиск нужен по content-desc. Как найти этот элемент не используя xpath?

И еще вопрос в Android 5+ whoer.net по webrtc показывает реальный ip (прокси настроен в Proxifier), что можно с этим сделать?
 

sw_sw

Client
Регистрация
24.02.2017
Сообщения
776
Благодарностей
309
Баллы
63
Добрый день!

Проблема с двойным тапом.

new Actions(driver).DoubleClick(driver.FindElement(By.Id("com.instagram.android:id/row_feed_photo_people_tagging"))).Perform();

и тд - вызывают лишь исключения

System.NotImplementedException: "Method has not yet been implemented"

метода DoubleTap уже почему-то нет в селениуме (сишарп)

Чтобы было ясно для чего - лайк в инстаграме делается двойным тапом по картинке.

Подскажите пожалуйста, кто как решает эту проблему?

Установлен апиум 3.0
Селениум 3.11.0 (новые версии также почему-то не работают)

System.TypeLoadException: "Отсутствует реализация метода "Dispose" в типе "OpenQA.Selenium.Appium.Service.AppiumCommandExecutor" из сборки "appium-dotnet-driver, Version=3.0.0.2, Culture=neutral, PublicKeyToken=null"."


Спасибо за внимание!


З.ы. лайк по кнопке лайка не предлагайте - в определенный момент возникает событие, когда сердчко лайка оказывается спрятано под кнопкой включения камеры, происходит лажа =)
Также не работает свайп до кнопки лайка (думал так сделать)

driver.FindElementByAndroidUIAutomator("new UiScrollable(new UiSelector().scrollable(true).resourceId(\"Отсюда")).scrollIntoView(new UiSelector().resourceId(\"до сюда"))");

Ошибка CS1061 "AppiumDriver<AppiumWebElement>" не содержит определения для "FindElementByAndroidUIAutomator", и не удалось найти доступный метод расширения "FindElementByAndroidUIAutomator"
 
Последнее редактирование:

sw_sw

Client
Регистрация
24.02.2017
Сообщения
776
Благодарностей
309
Баллы
63
Отвечу сам :

Код:
            driver.Tap(1, driver.FindElement(By.Id("com.instagram.android:id/row_feed_photo_people_tagging")), 50);
            driver.Tap(1, driver.FindElement(By.Id("com.instagram.android:id/row_feed_photo_people_tagging")), 50);
 

zennoX

Client
Регистрация
05.04.2014
Сообщения
484
Благодарностей
134
Баллы
43
Опять за помощью.
Нужно отследить элемент по wait.Until().
По xpath вылазит ошибка Failed to Dump Window Hierarchy, по id ошибки нет.
Но поиск нужен по content-desc. Как найти этот элемент не используя xpath?
с xpath строка такая?
wait.Until(ExpectedConditions.PresenceOfAllElementsLocatedBy(By.XPath("//android.view.View[@content-desc='тут_текст']")));
 
  • Спасибо
Реакции: lzlmrf

smotrimail

Client
Регистрация
06.02.2017
Сообщения
36
Благодарностей
6
Баллы
8
с xpath строка такая?
wait.Until(ExpectedConditions.PresenceOfAllElementsLocatedBy(By.XPath("//android.view.View[@content-desc='тут_текст']")));
Да, такая. Иногда срабатывает, а иногда нет. Ошибка Dump Window Hierarchy и т.д.
Четкой зависимости появления ошибки не отследил, возможно дерево сложное получается, или android 4.4.

Соорудил циклом for проверку по FindElementsByAndroidUIAutomator, все работает.
 

SteveJobs

Client
Регистрация
03.11.2016
Сообщения
283
Благодарностей
30
Баллы
28
Ребят, подскажите пожалуйста как такое сотворить с айфоном?
 

sw_sw

Client
Регистрация
24.02.2017
Сообщения
776
Благодарностей
309
Баллы
63

SteveJobs

Client
Регистрация
03.11.2016
Сообщения
283
Благодарностей
30
Баллы
28

lzlmrf

Client
Регистрация
14.08.2015
Сообщения
488
Благодарностей
149
Баллы
43

sw_sw

Client
Регистрация
24.02.2017
Сообщения
776
Благодарностей
309
Баллы
63
Мне не удалось через виртуалку с маком увидеть айфон.
кто имел опыт - прошу рассказать )
 

afk

Client
Регистрация
28.11.2016
Сообщения
99
Благодарностей
25
Баллы
18
Кто-то реализовал связку Appium+Nox ?
Если не сложно - отпишите мне в ЛС
 

sw_sw

Client
Регистрация
24.02.2017
Сообщения
776
Благодарностей
309
Баллы
63


У кого-то возникала такая проблема? Переменные все сделал, но как-то не помогло. в cmd Java видит

Привет, может у зенки свои переменные окружения? Вот в VS такое встречалось у меня..
 

SteveJobs

Client
Регистрация
03.11.2016
Сообщения
283
Благодарностей
30
Баллы
28
Как получить в переменную текст с буфера обмена на телефоне?
Таким кодом в cmd получаю текст, а вот в переменную не получается запихнуть, подскажите пожалуйста
Код:
    startInfo.Arguments = @"shell am broadcast -a clipper.get";
    startInfo.WindowStyle = ProcessWindowStyle.Hidden;
    Process.Start(startInfo).WaitForExit();
 

lybimiy86

Client
Регистрация
29.10.2016
Сообщения
97
Благодарностей
187
Баллы
33
Как получить в переменную текст с буфера обмена на телефоне?
Таким кодом в cmd получаю текст, а вот в переменную не получается запихнуть, подскажите пожалуйста
Код:
    startInfo.Arguments = @"shell am broadcast -a clipper.get";
    startInfo.WindowStyle = ProcessWindowStyle.Hidden;
    Process.Start(startInfo).WaitForExit();

Вот к примеру получаем текущий заряд батареи и ложим в переменную: (единственное неудобство, что на время запроса - появляется черное командное окно, которое исчезает сразу, но если шаблоны запущенны на основном ПК, то доставляет неудобство; не нашел вариантов как его заглушить, т.к. по сути дела это не cmd, а shell; т.е. по факту: p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; - не отрабатывает как нужно; на работоспособность не влияет, но вдруг найдете варианты как его заглушить)
PHP:
var sn = project.Variables["sn"].Value;

//Получаем статус батареи
Process p = new Process();
p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = "adb.exe";
p.StartInfo.Arguments = @"-s "+sn+" shell dumpsys battery | grep 'level'";
p.Start();
string output = p.StandardOutput.ReadToEnd();
p.WaitForExit();
project.Variables["battery_level"].Value = output.Trim();
 
  • Спасибо
Реакции: orka13 и SteveJobs

Rexton

Новичок
Регистрация
06.12.2018
Сообщения
1
Благодарностей
1
Баллы
3
Кто-то реализовал связку Appium+Nox ?
Если у тебя проблема, что adb встроенный Nox`а блокирует adb стоковый(от андроида). Я для себя нашел такое решение:

1) Тебе надо узнать адрес и порт (типа 127.0.0.1:62001) nox`а через его adb
2) Закрыть (kill-server) adb nox`а
3) Запустить стоковый adb
4) Там вписать adb connect [адрес:порт] (типа 127.0.0.1:62001)
 
  • Спасибо
Реакции: Koqpe

Master4eg

Client
Регистрация
06.04.2016
Сообщения
421
Благодарностей
123
Баллы
43
Такая ошибка
"adb" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
 

sw_sw

Client
Регистрация
24.02.2017
Сообщения
776
Благодарностей
309
Баллы
63

Master4eg

Client
Регистрация
06.04.2016
Сообщения
421
Благодарностей
123
Баллы
43
Помогите пожалуйста, вот такая шляпа. Эмулятор memu, отладку включил.
 

Вложения

nole

Client
Регистрация
19.11.2010
Сообщения
368
Благодарностей
217
Баллы
43

Master4eg

Client
Регистрация
06.04.2016
Сообщения
421
Благодарностей
123
Баллы
43
Помогите разобраться в чем дело. Запускаю Apium. Через cmd проверяю устройство(вроде все норм), Запускаю скрипт и вот такая ошибка. IP прописываю такой, как и в appium
 

Вложения

ebrwebrw

Client
Регистрация
20.08.2018
Сообщения
221
Благодарностей
164
Баллы
43
Node с актуальной версией appium v1.6.4
https://yadi.sk/d/AS-QajJT3JQxi3


Обновленные dll-ки актуальной версии Appium.WebDriver 3.0.0.2
Скачать: https://yadi.sk/d/GKQ6oUlv3JSePo

Мужики, остались у кого то файлы по этим ссылкам?
А то на appium.io, что версию не проверил - все идут без node.exe
 

Master4eg

Client
Регистрация
06.04.2016
Сообщения
421
Благодарностей
123
Баллы
43
Возродите тему!))

P.S. готов за $ купить услугу по настройке программ у меня на ПК и немного показать базовые вещи, стучите в лс. Юзеры только с репутацией.
 

Koqpe

Client
Регистрация
23.12.2014
Сообщения
1 099
Благодарностей
648
Баллы
113

Master4eg

Client
Регистрация
06.04.2016
Сообщения
421
Благодарностей
123
Баллы
43
Что возрождать? Тема не умирала, делайте все по инструкции, будьте внимательны, все работает...
У меня лично половина работает, половина нет, я только на сторонних ресурсах узнал, что нужно ещё JAVA устанавливать и в PATH прописывать пути(чего в статье не было указано) + с adb танцы устраивал+ как выше написали в новых версиях нет node.exe. Я не виню автора, но я только изучаю вот это все, и многое вообще не понятно, а по инструкции не всегда все работает.
 
  • Спасибо
Реакции: avtostopshik

nole

Client
Регистрация
19.11.2010
Сообщения
368
Благодарностей
217
Баллы
43
  • Спасибо
Реакции: avtostopshik и ebrwebrw

nole

Client
Регистрация
19.11.2010
Сообщения
368
Благодарностей
217
Баллы
43
У меня лично половина работает, половина нет, я только на сторонних ресурсах узнал, что нужно ещё JAVA устанавливать и в PATH прописывать пути(чего в статье не было указано) + с adb танцы устраивал+ как выше написали в новых версиях нет node.exe. Я не виню автора, но я только изучаю вот это все, и многое вообще не понятно, а по инструкции не всегда все работает.
скидывай по пунктам что как настраивал и как запускал, смотрю твое прошлое сообщение - нифига не понятно же, откуда скрин ошибки, какой скрипт запускаешь, с какими параметрами апиум запускаешь
я настраивал все по этой инструкции и работало, погуглить пришлось конечно
 

Koqpe

Client
Регистрация
23.12.2014
Сообщения
1 099
Благодарностей
648
Баллы
113
что нужно ещё JAVA устанавливать и в PATH прописывать пути(чего в статье не было указано)
JAVA при установке SDK по умолчанию просит, просто прочитать что нужно, как в PATH прописывать есть инструкция в стартпосте:
firefox_2018-12-27_01-22-35.png
Вы в принципе пошли по правильному пути, не можете по пунктам выполнить инструкцию:
P.S. готов за $ купить услугу по настройке программ у меня на ПК и немного показать базовые вещи, стучите в лс. Юзеры только с репутацией.
 

Master4eg

Client
Регистрация
06.04.2016
Сообщения
421
Благодарностей
123
Баллы
43
JAVA при установке SDK по умолчанию просит, просто прочитать что нужно, как в PATH прописывать есть инструкция в стартпосте:
Посмотреть вложение 34858
Вы в принципе пошли по правильному пути, не можете по пунктам выполнить инструкцию:
Спасибо, но я до этого уже допер гугля другие ресурсы)
У меня все работало впринципе, но только не получалось соедениться с эмулятором в зенке. Хотя uiautomatorviewer.bat опознавал эмулятор. Но я уже там так наковырял, что слабо верю, что инструкция мне какая-то поможет. Поэтому я готов заплатить $ дабы не тратить нервы.
 

Koqpe

Client
Регистрация
23.12.2014
Сообщения
1 099
Благодарностей
648
Баллы
113
Спасибо, но я до этого уже допер гугля другие ресурсы)
Мы с Вами немного о разном, я Вам говорю что эта инструкция самодостаточна и если все делать внимательно 100% рабочая.
Теперь об эмуляторах, эта инструкция написана для физического устройства, Вы мучаете эмулятор, подключите смартфон, добейтесь положительного результата, поймете как все работает. :bt:
 
Последнее редактирование:
  • Спасибо
Реакции: Master4eg

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)