def setup(self): caps = {} caps["platformName"] = "android" caps["deviceName"] = "测试人社区 ceshiren.com" caps["appPackage"] = "com.tencent.mm" caps["appActivity"] = "com.tencent.mm.ui.LauncherUI" caps["noReset"] = True caps['unicodeKeyboard'] = True caps['resetKeyboard'] = True caps['chromedriverExecutable'] = \ '/Users/seveniruby/projects/chromedriver/chromedrivers/chromedriver_78.0.3904.11' # options = ChromeOptions() # options.add_experimental_option('androidProcess', 'com.tencent.mm:appbrand0') caps['chromeOptions'] = {'androidProcess': 'com.tencent.mm:appbrand0'} caps['adbPort'] = 5038 self.driver = webdriver.Remote("http://*****:*****@text='通讯录']") self.driver.implicitly_wait(10) self.enter_micro_program() print(self.driver.contexts)
def start(self): if self._driver == None: desired_caps = {} desired_caps['platformName'] = 'Android' desired_caps['platformVersion'] = '6.0' desired_caps['deviceName'] = 'emulator-5554' desired_caps['appPackage'] = self._package desired_caps['appActivity'] = self._activity desired_caps['noReset'] = 'true' desired_caps['dontStopAppOnReset'] = 'true' desired_caps['udid'] = yaml.safe_load( open('../page/configuration.yaml'))['desired_caps']['udid'] # 跳过安装 desired_caps['skipDeviceInitialization'] = 'true' # 默认输入是英文输入,更改可以输入中文 desired_caps['resetKeyBoard'] = 'true' self._driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) self._driver.implicitly_wait(5) else: # desired_caps中的appPackage、appActivity # self._driver.launch_app() # 启动任何appPackage和appActivity self.driver.start_activity(self._package, self._activity) return self
class MyTestCase(unittest.TestCase): desired_caps = desired_caps = { 'platformName': 'Android', 'platformVersion': '5.1.1', 'deviceName': '7N2SQL14CT014460', 'appPackage': 'com.xingfeiinc.app', 'appActivity': 'activity.MainActivity' } self.driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) self.driver.hide_keyboard() time.sleep(3) def click_UserNmame(self): el = self.driver.find_element_by_id('com.xingfeiinc.app:id/name') el.click() def input_UserName(self): el = self.driver.find_element_by_id('com.xingfeiinc.app:id/name') el.send_keys('17611111111') def click_PassWord(self): el = self.driver.find_element_by_class('android.widget.EditText') el.click() def input_PassWordName(self): el = self.driver.find_element_by_id('com.xingfeiinc.app:id/name') el.send_keys('111111') def click_submit(self): el = el = self.driver.find_element_by_id('com.xingfeiinc.app:id/login') el.click()
def start(self): desired_caps = { "automationName": "UIAutomator2", "platformName": "Android", "platformVersion": "5.1", "deviceName": "Android Emulator", "appPackage": "com.nowcoder.app.florida", "appActivity": "com.nowcoder.app.florida.activity.home.SplashActivity", "noReset": "true" } # desired_caps["automationName"] = "UIAutomator2" # # 平台类型 # desired_caps["platformName"] = "Android" # # 平台版本 # desired_caps["platformVersion"] = "5.1" # # 设备名称 # desired_caps["deviceName"] = "Android Emulator" # # app包名 # desired_caps["appPackage"] = "com.nowcoder.app.florida" # # app入口activity # desired_caps["appActivity"] = "com.nowcoder.app.florida.activity.home.SplashActivity" # # app是否重置再打开 # desired_caps["noReset"] = "true" # 连接appium server。 前提:appium desktop要启动,有监听端口 # 要将我们的服务器参数发送过去 self.driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
def inicializar_appium(self): udid = "ZY3235B66B" # motoG # udid = "330073bd2b2bb325" #j7 prime # udid = "4200d58fd878548f" #j5 prime # udid = "ZY225FNTX8" # motoG7 novo # udid = "ZY224VFBJR" # MOTO Z2 # udid = "HAAXB7611423Y4Y" # ZENFONE 4 MAX # udid = "39587924f93f7ece" # S9 # udid = "ad061703bcaf56bc2b" # S7 Edge # udid = "NVCQ5HNJ7DS8DMFM" # LG K4 # udid = "N2F4C15605001333" # HUAWEI P8 # udid = "0057160804" # Headspin galax tab url = "http://127.0.0.1:4723/wd/hub" # Url Appium local # url = "https://br-sao.headspin.io:7012/v0/e0dfc76ad34c4b9882a4734ef479a891/wd/hub" # url = "https://br-sao.headspin.io:7012/v0/e0dfc76ad34c4b9882a4734ef479a891/wd/hub" desired_caps = {} desired_caps['platformName'] = "Android" desired_caps['udid'] = udid desired_caps['deviceName'] = udid desired_caps['appPackage'] = "com.whatsapp" desired_caps['appActivity'] = "com.whatsapp.HomeActivity" desired_caps['noReset'] = True desired_caps['automationName'] = "uiautomator2" desired_caps['newCommandTimeout'] = 900 desired_caps['no-reset'] = True url = url self.driver = webdriver.Remote(url, desired_caps) return self.driver
def set_up(self): capabilities = { 'platformName': 'Android', 'deviceName': 'pixel3', 'app': PATH('app/news.apk') } url = 'http://localhost:4723/wd/hub' self.driver = webdriver.Remote(url, capabilities)
def setup(self): desired_caps = {} desired_caps['platformName'] = 'Android' # desired_caps['platformVersion']='6.0' desired_caps['deviceName'] = 'emulator-5554' desired_caps['appPackage'] = 'cn.mkblog.www.mkbrowser' desired_caps['appActivity'] = 'cn.mkblog.www.mkbrowser.WebActivity' self.driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) self.driver.implicitly_wait(5)
def appnium_start(): desired_caps = {} desired_caps['platformName'] = 'Android' # 设备版本信息 desired_caps['platformVersion'] = '6.0.1' # 设备版本号 # desired_caps['deviceName'] = '127.0.0.1:7555' # 虚拟机名称 desired_caps['appPackage'] = 'com.shmj.xiaoxiucai' # 包名 desired_caps[ 'appActivity'] = 'com.qsmy.busniess.welcome.WelcomeActivity' # 控制打开游戏 driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) return driver
def setup_class(self): print("初始化driver") cap = { "platformName": "Android", "deviceName": "127.0.0.1:62001", "appPackage": "com.cnezsoft.xxm", "appActivity": ".MainActivity", "noReset": True } self.driver = webdriver.Remote("http://localhost:4723/wd/hub", cap) self.driver.implicitly_wait(10)
def init_driver(self): desired_caps = dict() desired_caps['platformName'] = 'Android' desired_caps['platformVersion'] = '5.1' desired_caps['deviceName'] = '192.168.56.101:5555' desired_caps['appPackage'] = 'com.yunmall.lc' desired_caps[ 'appActivity'] = 'com.yunmall.ymctoc.ui.activity.LogonActivity' desired_caps['noReset'] = True return webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
def setUp(self): desired_caps = { 'platformName': 'Android', 'deviceName': '127.0.0.1:62001', 'platformVersion': '5.1.1', 'appPackage': 'com.tencent.mobileqq', 'appActivity': '.activity.LoginActivity' } self.driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
def start(self): _package = "com.xueqiu.android" _activity = ".view.WelcomActivityAlias" if self._driver is None: caps = {} caps["platformName"] = "android" caps["deviceName"] = "hogwarts" caps["appPackage"] = _package caps["appActivity"] = _activity caps["autoGrantPermissions"] = True self._driver = webdriver.Remote("Http")
def setup(self): des_caps = { 'platformName': 'android', 'platformVersion': '6.0', 'browserName': 'Brrowser', 'devicesName': '127.0.0.1:7555 ', 'chromedriverExecutable': '' #指定chromedriver的地址 } self.driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', des_caps) # 建立连接 self.driver.implicitly_wait(5)
def setup(self): caps = {} caps["platformName"] = "android" caps["deviceName"] = "emulator-5554" caps["appPackage"] = "com.tencent.wework" caps["appActivity"] = ".launch.LaunchSplashActivity" caps["noReset"] = "true" caps['settings[waitForIdleTimeout]'] = 1 # 客户端与appium 服务器建立连接的代码 self.driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", caps) self.driver.implicitly_wait(5)
def start(self): # 如果为 none ,创建 if self.driver == None: self.driver = webdriver.Remote(f"http://{ip}:{port}/wd/hub", desires) self.driver.implicitly_wait(5) else: # 否则,直接启动 # self.driver.start_activity('com.tencent.wework', '.launch.LaunchSplashActivity') self.driver.launch_app() return self
def installApp(cls) -> WebDriver: caps = {} caps['platformName'] = 'android' caps['deviceName'] = 'oneplus' caps['appPackage'] = 'com.xueqiu.android' caps['appActivity'] = '.view.WelcomeActivityAlias' #解决第一次启动的问题 caps['autoGrantPermissions'] ='true' cls.driver = webdriver.Remote('http://localhost:4273/wd/hub', caps) cls.driver.implicitly_wait(10) return cls.driver
def setUp(self): # set up appium app = os.path.abspath('../../apps/TestYanXuan/build/debug-iphonesimulator/NeteaseYanxuan.app') self.driver = webdriver.Remote( command_executor='http://127.0.0.1:4723/wd/hub', desired_capabilities={ 'app': app, 'platformName': 'iOS', 'platformVersion': '9.3', 'deviceName': 'iPhone 6', 'autoAcceptAlerts': 'true' })
def setup(self): desired_caps = dict() desired_caps['automationName'] = 'UiAutomator2' desired_caps['platformName'] = 'Android' desired_caps['platformVersion'] = '6.0.1' desired_caps['deviceName'] = 'HUAWEI' desired_caps['appPackage'] = 'com.xueqiu.android' desired_caps['appActivity'] = '.view.WelcomeActivityAlias' desired_caps['noReset'] = "true" # desired_caps['dontStopAppOnReset'] = "true" # 设置首次启动的时候不停止app desired_caps['unicodeKeyBoard'] = "true" # 设置中文输入 self.driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) self.driver.implicitly_wait(5)
def restartApp(cls): caps = {} caps['platformName'] = 'android' caps['deviceName'] = 'oneplus' caps['appPackage'] = 'com.xueqiu.android' caps['appActivity'] = '.view.WelcomeActivityAlias' caps['unicodeKeyboard'] = 'True' caps['resetKeyboard'] = 'True' caps['noReset'] = 'True' cls.driver = webdriver.Remote('http://localhost:4723/wd/hub', caps) cls.driver.implicitly_wait(10) return cls.driver
def test_something(self): udid = "ZY3235B66B" # motoG # udid = "330073bd2b2bb325" #j7 prime # udid = "4200d58fd878548f" #j5 prime # udid = "ZY225FNTX8" # motoG7 novo # udid = "ZY224VFBJR" # MOTO Z2 # udid = "HAAXB7611423Y4Y" # ZENFONE 4 MAX # udid = "39587924f93f7ece" # S9 # udid = "ad061703bcaf56bc2b" # S7 Edge # udid = "NVCQ5HNJ7DS8DMFM" # LG K4 # udid = "N2F4C15605001333" # HUAWEI P8 # udid = "0057160804" # Headspin galax tab url = "http://127.0.0.1:4723/wd/hub" # Url Appium local # url = "https://br-sao.headspin.io:7012/v0/e0dfc76ad34c4b9882a4734ef479a891/wd/hub" # url = "https://br-sao.headspin.io:7012/v0/e0dfc76ad34c4b9882a4734ef479a891/wd/hub" desired_caps = {} desired_caps['platformName'] = "Android" desired_caps['udid'] = udid desired_caps['deviceName'] = udid desired_caps['appPackage'] = "com.whatsapp" desired_caps['appActivity'] = "com.whatsapp.HomeActivity" desired_caps['noReset'] = True desired_caps['automationName'] = "uiautomator2" desired_caps['newCommandTimeout'] = 900 desired_caps['no-reset'] = True url = url self.driver = webdriver.Remote(url, desired_caps) sleep(5) categorias = self.driver.find_element_by_id( "com.whatsapp:id/eula_accept").click() sleep(2) els5 = self.driver.find_element_by_id("Qual é meu número?").click() sleep(2) els6 = self.driver.find_element_by_id("com.whatsapp:id/submit").click() sleep(2) permitir = self.driver.find_element_by_id( "com.android.packageinstaller:id/permission_allow_button").click() sleep(2) usar = self.driver.find_element_by_id("android:id/button1").click() sleep(2) avancar = self.driver.find_element_by_id( "com.whatsapp:id/registration_submit").click() sleep(5) ok = self.driver.find_element_by_id("android:id/button1").click()
def start(self): _package="com.xueqiu.android" _activity=".view.WelcomeActivityAlias" if self._driver is None: caps=dict() caps["platformName"] = "android" caps["deviceName"] = "hogwarts" caps["appPackage"] = "package" caps["appActivity"] = "activity" caps["autoGrantPermissions"] = True self._driver = webdriver.Remote("http://localhost:4723/wd/hub", caps) self._driver.implicity_wait(3) else: self._driver.start_activity(_package, _activity) return self
def __init__(self): # 准备启动参数 caps = {} # 必填-且正确 caps['platformName'] = 'Android' # 必填-且正确 caps['platformVersion'] = '5.1' # 必填 caps['deviceName'] = '192.168.56.101:5555' # APP包名 / caps['appPackage'] = 'com.vcooline.aike' # 启动名 caps['appActivity'] = '.umanager.LoginActivity' # 获取driver self.driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", caps)
def get_driver(): # server 启动参数 desired_caps = {} # 设备信息 desired_caps['platformName'] = 'Android' desired_caps['platformVersion'] = '5.1' desired_caps['deviceName'] = '192.168.56.101:5555' # 指定appium框架版本 desired_caps['automationName'] = 'Uiautomator2' # 设置中文 desired_caps['unicodeKeyboard'] = True desired_caps['resetKeyboard'] = True # app的信息 desired_caps['appPackage'] = 'com.yunmall.lc' desired_caps['appActivity'] = 'com.yunmall.ymctoc.ui.activity.MainActivity' # 声明我们的driver对象 return webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) """以下测试driver方法使用"""
def get_driver(cls): if cls.get_driver is None: # 准备启动参数 caps = {} # 必填-且正确 caps['platformName'] = 'Android' # 必填-且正确 caps['platformVersion'] = '5.1' # 必填 caps['deviceName'] = '192.168.56.101:5555' # APP包名 / caps['appPackage'] = 'com.vcooline.aike' # 启动名 caps['appActivity'] = '.umanager.LoginActivity' # 获取driver cls.driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", caps) # 重点:重点:不能缩进,必须和if判断持平 return cls.driver
def setup(self): """初始化app driver""" desired_caps = {} desired_caps['platformName'] = DesireCaps.get_value( "desired_caps_01", "platformName") # Android desired_caps['platformVersion'] = DesireCaps.get_value( "desired_caps_01", "platformVersion") # android 版本 desired_caps['deviceName'] = DesireCaps.get_value( "desired_caps_01", "deviceName") # 设备名称 desired_caps['appPackage'] = DesireCaps.get_value( "desired_caps_01", "appPackage") # 包名 desired_caps['appActivity'] = DesireCaps.get_value( "desired_caps_01", "appActivity") # activity名称 base_url = DesireCaps.get_value("appium", "base_url") self.desired_caps = desired_caps self.base_url = base_url self.base_url = DesireCaps.get_value("appium", "base_url") self.driver = webdriver.Remote('self.base_url', 'self.desired_caps')
def __init__(self,driver: WebDriver = None): if driver is None: caps = {} caps["platformName"] = "Android" caps["deviceName"] = "127.0.0.1:7555" caps["appPackage"] = "com.xueqiu.android" caps["appActivity"] = ".common.MainActivity" # 保留缓存,比如登录状态 caps["noReset"] = "True" # 不停止应用,直接运行测试用例,所以每次执行完记得返回 # caps["dontStopAppOnReset"] = "true" # 跳过初始化阶段 #caps['skipDeviceInitialization'] = 'true' # 跳过server安装 caps['skipServerInstallation'] = 'true' self.driver = webdriver.Remote("http://localhost:4723/wd/hub", caps) self.driver.implicitly_wait(5) else: self.driver = driver
def setup(self): # 第一步 设置chromedriver正确版本 # 简单粗暴的解决方案 desired_caps = {} desired_caps['platformName'] = 'Android' desired_caps['deviceName'] = '192.168.56.101:5555' desired_caps['appPackage'] = 'com.xueqiu.android' desired_caps['appActivity'] = '.common.MainActivity' # 不清楚上一次的'记录' desired_caps['noReset'] = 'true' desired_caps['unicodeKeyboard'] = 'true' desired_caps['resetKeyboard'] = 'true' # desired_caps['chromedriverExecutable'] = '' 我使用默认的路径 desired_caps['chromeOptions'] = {'androidProcess': ''} desired_caps['abdPort'] = 5038 self.driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) self.driver.implicitly_wait(5)
def pay_click(self): "点击购物车中结算按钮" self.element_click(self.driver, self.payment_loc) time.sleep(1) if __name__ == '__main__': desired_caps = { "platformName": "android", "platformVersion": "5.1.1", "deviceName": "127.0.0.1:21503", "appPackage": "com.insthub.ecmobile", "appActivity": ".activity.EcmobileMainActivity", "unicodeKeyboard": True, "resetKeyboard": True } driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", desired_caps) house = HousePage(driver) house.personal_click() time.sleep(1) house.login_click() username = "******" password = "******" house.username_input(username) house.password_input(password) house.sign_click() house.house_click()
""" 目标:获取元素在屏幕中的位置 方法:location 需求: 1.进入设置页面 2.获取搜索按钮在屏幕中的坐标位置 """ from time import sleep from appium.webdriver import webdriver # server 启动参数 # 设备信息 # app 信息 # 声明我们的driver对象 driver = webdriver.Remote(" ") # 获取包名 # 获取启动名 # 暂停3秒 sleep(3) # 关闭驱动 driver.quit()