Кто работал с appium? Установка под разные ОС

Насколько я знаю нет.

Если только в виртуальной машине, но не рекомендую. )
Сам не пробовал, но отзывы негативные —
скорость медленная + xCode иногда падает.

Доброго времени суток!
Проблема с запуском тестов, правильнее сказать с настройкой.
iOS 10.10.1 Yosemite
Xcode 6.1
Appium 1.3.4

debug: Appium request initiated at /wd/hub/session
debug: Request received with params: {"desiredCapabilities":{"platformVersion":"8.1","browserName":"Safari","platformName":"iOS","device":"iPad Simulator","deviceName":"iPad 2 (661D5C3B-5003-49C4-A0AC-D4B5D84850C8)"}}
info: Configuring Safari session
info: Trying to use mobile safari, version 8.1
info: Looking for built in app MobileSafari
info: App is not at /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.1.sdk/Applications/MobileSafari.app
info: Couldn't find original app, but found the temp Appium one so using that
info: Using mobile safari app at /tmp/Appium-MobileSafari.app
info: Cleaning mobile safari data files
info: Determining current user
info: User is JoMedia
info: Couldn't find Safari support directories in order to clear out old data
info: Creating new appium session 599a84b9-7c5c-4465-92b2-052a0bf6db67
info: Removing any remaining instruments sockets
info: Cleaned up instruments socket /tmp/instruments_sock
info: Cleaning up any tracedirs
info: No tracedirs to clean up
info: Setting Xcode folder
info: Setting Xcode version
info: Setting iOS SDK Version
info: iOS SDK Version set to 8.1
info: Detecting automation tracetemplate
error: Could not find Automation.tracetemplate in /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate
info: Cleaning up appium session
error: Failed to start an Appium session, err was: Error: Could not find Automation.tracetemplate in /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate
info: Error: Could not find Automation.tracetemplate in /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate
    at null.<anonymous> (/usr/local/lib/node_modules/appium/lib/devices/ios/ios.js:660:14)
    at /usr/local/lib/node_modules/appium/lib/helpers.js:514:9
    at ChildProcess.exithandler (child_process.js:635:7)
    at ChildProcess.EventEmitter.emit (events.js:98:17)
    at maybeClose (child_process.js:743:16)
    at Socket.<anonymous> (child_process.js:956:11)
    at Socket.EventEmitter.emit (events.js:95:17)
    at Pipe.close (net.js:465:12)
info: Responding to client with error: {"status":33,"value":{"message":"A new session could not be created. (Original error: Could not find Automation.tracetemplate in /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate)","origValue":"Could not find Automation.tracetemplate in /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemp

Ошибка связана с изменениями в новом Xcode, Appium ещё не успел выпустить фикс.

Проверьте путь в файле appium/lib/devices/ios/ios.js, строка 749. Должно быть так:

var xcodeTraceTemplatePath = path.resolve(xcodeFolderPath,
  "../Applications/Instruments.app/Contents/PlugIns",
  "AutomationInstrument.xrplugin/Contents/Resources",
  "Automation.tracetemplate");
1 лайк

Теперь другая ошибка :cry:

POST /wd/hub/session 500 35ms - 252b
debug: Appium request initiated at /wd/hub/session
debug: Request received with params: {“desiredCapabilities”:{“platformVersion”:“8.1”,“browserName”:“Safari”,“platformName”:“iOS”,“device”:“iOS Simulator”,“deviceName”:“iPad 2”}}
info: Configuring Safari session
info: Trying to use mobile safari, version 8.1
info: Looking for built in app MobileSafari
info: App is not at /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.1.sdk/Applications/MobileSafari.app
warn: App is also not at /tmp/Appium-MobileSafari.app
error: Could not prepare mobile safari with version ‘8.1’: Error: Couldn’t find built in app in its home or temp dir!
info: Got configuration error, not starting session
info: Cleaning up appium session
error: Failed to start an Appium session, err was: Error: Couldn’t find built in app in its home or temp dir!
info: Error: Couldn’t find built in app in its home or temp dir!
at /usr/local/lib/node_modules/appium/lib/helpers.js:164:23
at Object.oncomplete (fs.js:107:15)
info: Responding to client with error: {“status”:33,“value”:{“message”:“A new session could not be created. (Original error: Couldn’t find built in app in its home or temp dir!)”,“origValue”:“Couldn’t find built in app in its home or temp dir!”},“sessionId”:null}POST /wd/hub/session 500 35ms - 252b
debug: Appium request initiated at /wd/hub/session
debug: Request received with params: {“desiredCapabilities”:{“platformVersion”:“8.1”,“browserName”:“Safari”,“platformName”:“iOS”,“device”:“iOS Simulator”,“deviceName”:“iPad 2”}}
info: Configuring Safari session
info: Trying to use mobile safari, version 8.1
info: Looking for built in app MobileSafari
info: App is not at /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.1.sdk/Applications/MobileSafari.app
warn: App is also not at /tmp/Appium-MobileSafari.app
error: Could not prepare mobile safari with version ‘8.1’: Error: Couldn’t find built in app in its home or temp dir!
info: Got configuration error, not starting session
info: Cleaning up appium session
error: Failed to start an Appium session, err was: Error: Couldn’t find built in app in its home or temp dir!
info: Error: Couldn’t find built in app in its home or temp dir!
at /usr/local/lib/node_modules/appium/lib/helpers.js:164:23
at Object.oncomplete (fs.js:107:15)
info: Responding to client with error: {“status”:33,“value”:{“message”:“A new session could not be created. (Original error: Couldn’t find built in app in its home or temp dir!)”,“origValue”:“Couldn’t find built in app in its home or temp dir!”},“sessionId”:null}

Похоже, изменился не один путь… Вот это может помочь — выполните в Терминале, если используете консольную версию Appium (сам не могу сейчас проверить):

cd path/to/appium
git checkout ios8

Только замените path/to/appium на свой путь, куда установлен Appium

Вот такая беда, может кто-то сталкивался?

`


Запускаю вот такую команду:
~/Android/appium $ ./reset.sh --android --selendroid --verbose

В ответ получаю:
* Determining platform
* Platform is linux
---- Resetting / Initializing Appium ----
RESETTING NPM
* Installing new or updated NPM modules (including devDeps)
npm WARN package.json assert@1.3.0 assert is also the name of a node core module.
npm WARN package.json md5calculator@0.0.3 No repository field.
npm WARN package.json node-idevice@0.1.5 No repository field.
npm WARN package.json path@0.11.14 path is also the name of a node core module.
npm WARN package.json vargs@0.1.0 No repository field.
npm WARN package.json utf7@1.0.0 No repository field.
npm WARN optional dep failed, continuing udidetect@1.0.7
RESETTING GENERAL
* Setting git revision data
Loading "Gruntfile.js" tasks...ERROR

Warning: Task "setGitRev" not found. Use --force to continue.

`

Ребята, подскажите пожалуйста используя Appium, можно заставить девайс отправлять текстовые сообщения на другой девайс, или открыть калькулятор и в нем сделать подсчеты, в общем работать со встроенными в Android, iOS приложениями. Имитировать звонки, сообщения, будильник и прочие вещи?

На Андроиде - это по сути это такие же приложения нативные. Так что да, вы просто указываете имя приложения аппиуму и работаете с ним, как с вашим тестируемым приложением

1 лайк

Спасиб за помощь, тогда мне Appium подойдет. А в appium есть что-то подобно viewer, как в UiAutomator? :slight_smile:

В Appium есть инспектор, но я предпочитаю для андроида юзать утилитку monitor которая входит в Android SDK

1 лайк

Спасибо :smile:

Подскажите, в чем может быть проблема, если после выполнения команды reset.bat --android --selendroid --verbose появляется сообщение:

=====Resetting Android=====

node_modules.bin\grunt configAndroidBootstrap
Running “configAndroidBootstrap” task
Fatal error: Unable to spawn android: spawn cmd ENOENT

Stopping because there was an error and --force was not used.

День добрый. Занимаюсь настройкой Appium, и уже на старте столкнулся с проблемой:
устанавливаю Appium по пунктам, и на п.5 Выполняете reset.bat --android --selendroid --verbose не получается выполнить reset.bat
reset.bat" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
полагаю, что что-то не прописал, или не так прописал в системные переменные. Буду благодарен, если подскажете, где накосячил.

Возможно вы не там выполняете? Нужно перейти в директорию с appium.

я же верно понимаю, что директория с appium, это та директория, куда я склонирывал с git репо?
делаю git clone GitHub - appium/appium: Cross-platform automation framework for all kinds of your apps built on top of W3C WebDriver protocol
перехожу в каталог appium
выполняю там reset.bat
Screenshot by Lightshot

Я думал у вас старая версия appium, с bat-файлами. А у вас свежий репозиторий.
Если вы хотите использовать новую версию, то всё описано в http://appium.io/getting-started.html
Собственно там 2 варианта:
Либо устанавливаем node.js и appium для неё
Либо скачиваем приложение отсюда - appium / Appium.app / Downloads — Bitbucket

Да, по второму варианту все получилось, запускается. про старые версии не знал. Спасибо за подсказку.