dron4ik
07.Декабрь.2017 13:53:30
#1
Я использую python для своих тестов на appium. Я могу протестировать browser но с нативными приложениями, что то плохо. Это мой тест для браузера:
import unittest
from appium import webdriver
class SimpleTest(unittest.TestCase):
def setUp(self):
desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['deviceName'] = 'f3eb943d'
desired_caps['browserName'] = 'Chrome'
self.driver = webdriver.Remote('http://0.0.0.0:4723/wd/hub', desired_caps)
def tearDown(self):
self.driver.quit()
def testOpenPage(self):
self.driver.get('https://en.wikipedia.org')
text = self.driver.find_element_by_xpath('//div/h2').text
self.assertEquals(text, "Today's featured article")
if __name__ == '__main__':
unittest.main()
Но вот с нативнм придложением я не магу понять что я ему должен прописать в capabilities:
desired_caps['app'] = ???
Например я хачу протестировать апликацию whatsapp
1 лайк
mrGorobec
(Sasha)
07.Декабрь.2017 14:00:20
#2
я пробовал только для ios
я ставил только,
platformName
platformVersion
deviceName
app
platformName = Android
platformVersion = Android version
deviceName = Sansung …
app = path to app
Но может кто активно пишет под андроид - поправит меня.
dron4ik
07.Декабрь.2017 14:17:28
#4
Да но что я пишу в path to app? От куда я могу взять сам путь??
mrGorobec
(Sasha)
07.Декабрь.2017 14:36:31
#5
это путь к самой аппе. например у меня в маке было
“app”: “/Users/alexandrpolishchuk/Library/Developer/Xcode/DerivedData/Calculator-anfzoxkukfwxcdgkadxzdglxaxdv/Build/Products/Debug-iphonesimulator/Calculator.app”
вот я описывал про ios если вдруг
Предыстория
Всем привет. Недавно на сайте был опросник по мобильное автоматизации. Я тоже в нем принял голосование - хотел бы научиться автоматизировать под #mobile:appium . Но решил попробовать сам - разобраться. Возможно это не так и сложно? На титул гуру я не претендую, и хотел бы описать что у меня получилось.
[изображение]
Почему Python Appium?
Сначала добавлю что есть опыт автоматизации на #programming:python API + Selenium WebDriver. Поэтому выбор делать не приходилось. Промониторив какие есть фремворки - решил остановиться на #mobile:appium . Плюсы и минусы описывать не буду - возможно он и не самый востребованый а возможно и самый ) Но то что он кроссплатформенный - …
1 лайк
dron4ik
07.Декабрь.2017 14:45:23
#6
А если аппликация на самом аппарате?
mrGorobec
(Sasha)
07.Декабрь.2017 14:54:16
#7
вообще - я не оч експерт по мобильной автоматизации - но я помню что твое приложение должно устанавливаться до теста на девайс или эмулятор. это как бы тоже часть теста.
1 лайк
dron4ik
07.Декабрь.2017 15:06:19
#8
Я хочу протестировать аппликацию которая уже установлена на аппарате. Я пользуюсь UI Automator я вижу апликацию и вижу елементы, но как к этой апликации дайте не знаю…но всё равно спасибо за ответ…может у кого нибуть будут ещё советы
box
(Black Box Blues)
07.Декабрь.2017 15:58:54
#9
У меня капы для тестирования нативного приложения на эмуляторе Андроид выглядят в среднем так:
samsung_galaxy_S8_API26 = {
"platformName": "Android",
"platformVersion": "8.0",
"deviceName": "Android Emulator",
"avd": "SmsGalaxyS8_API26",
"app": "/Users/user/Desktop/app-debug.apk",
"connectHardwareKeyboard": False,
"appPackage": "com.myapp.android",
"appActivity": "com.myapp.android.activities.MainActivity"
}
А вообще, тут список всех возможных капов: https://appium.io/slate/en/master/?ruby#appium-server-capabilities
1 лайк
Viterzgir
(Alex M)
08.Декабрь.2017 16:00:27
#10
Просто укажите appPackage и appActivity - путь не нужно указывать. Эти штуки можно взять с кода приложения (если есть доступ) или установив приложение какое-то с АппСтора (типа Activity Launcher).
Activity Launcher покажет вам активити и пекедж для приложений на телефоне\планшете.
4 лайка
JagaJaga
(Александр)
15.Февраль.2018 06:26:17
#13
В данной статье рассказано как найти необходимые активити и пэкедж.