现在开发的前端界面使用vue或者更牛逼技术,导致使用appium或者uiautomator2做自动化测试时不能识别到元素,无法使用传统的id,name或者xpath,这时我们需要使用坐标点击文本框。有获取坐标方法,下期写一篇文章,可以在评论区提醒瑞克。
from appium import webdriver import time import os import subprocess from config import setting from paddleocr import PaddleOCR import pyautogui from selenium.webdriver.common.utils import keys_to_typing from selenium.webdriver.common.by import By from selenium.webdriver.remote.webelement import WebElement from utils.inputMethod import InputMethod from appium.webdriver.common.touch_action import TouchAction from appium.webdriver.common.multi_action import MultiAction desired_caps = dict() desired_caps['platformName'] = 'Android' # 可以写成android desired_caps['platformVersion'] = '12' # 11.1.0等都可以写成11 desired_caps['deviceName'] = 'HONOR X10' # 设备名字可以随便写,但是不可以为空 desired_caps['appPackage'] = '你测试app包名' desired_caps['appActivity'] = '你测试app的MainActivity' desired_caps['noReset'] = True # 打开app时不清除数据 desired_caps['udid'] = "你手机id" desired_caps['unicodeKeyboard'] = True desired_caps['resetKeyboard'] = True #启动appium服务 # cmd = r'start appium -a 127.0.0.1 -p 4723 -bp 4724' # pr = subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True) # pr.wait(timeout=3) driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) time.sleep(10) # 等待20秒"
#在焦点输入框输入瑞克
driver.switch_to.active_element.send_keys("瑞克") # 输入文本
测试实现效果图:
标签:webdriver,appium,caps,desired,测试,自动化,import From: https://www.cnblogs.com/rickandmoty/p/17376218.html