当前位置: 首页 > news >正文

android移动网站开发详解自己怎么做网站卖车

android移动网站开发详解,自己怎么做网站卖车,app制作与推广,开发一个oa系统多少钱浅尝Appium自动化框架 Appium自动化框架介绍Appium原理Appium使用安装平台驱动实战 坑 Appium自动化框架介绍 Appium 是一个开源的自动化测试框架#xff0c;最初设计用于移动应用的测试#xff0c;但现在它也扩展了对桌面端应用的支持。Appium 使得自动化测试变得更加简单最初设计用于移动应用的测试但现在它也扩展了对桌面端应用的支持。Appium 使得自动化测试变得更加简单并且支持跨平台能够同时对 iOS、Android、Windows 和 macOS 平台上的应用进行自动化测试。 不同于Selenium只是用来自动化测试web程序Appium可以自动化测试各个平台的原生应用。 官网 Appium原理 ------------------ | Test Scripts | | (Java, Python, | | JavaScript) | -----------------|v ----------------- | Appium Server | | (HTTP Server) | -----------------|------------------------------------------------------------------| | | |v v v v ------------ ------------- -------------- -------------- | iOSDriver | | AndroidDriver | | WindowsDriver | | macOSDriver | | XCUITest | | (UIAutomator) | | (WinAppDriver)| | (macOSDriver)| ------------ ------------- -------------- --------------| | | | ------------ ------------- -------------- -------------- | iOS App | | Android App| | Windows App| | macOS App | ------------ ------------- -------------- -------------- Test Scripts 测试脚本可以使用不同编程语言编写如 Java、Python 或 JavaScript向 Appium Server 发送 HTTP 请求。Appium Server Appium Server 是一个 HTTP 服务器负责接收客户端的请求并将请求转发给相应的平台驱动程序。平台驱动 iOSDriver 用于 iOS 平台支持通过 XCUITest 或 UIAutomation 与 iOS 设备交互。 AndroidDriver 用于 Android 平台支持通过 UIAutomator 或 Espresso 与 Android 设备交互。 WindowsDriver (WinAppDriver) 用于 Windows 平台支持通过 WinAppDriver 进行桌面应用的自动化测试。 macOSDriver 用于 macOS 平台支持通过 macOSDriver 进行桌面应用的自动化测试。应用 驱动程序与设备或模拟器上的应用进行交互执行各种操作如启动应用、查找元素、点击、输入等。 Appium使用 安装平台驱动 驱动平台适用场景uiautomator2Android原生 Android 应用自动化xcuitestiOS原生 iOS 应用自动化espressoAndroid适用于使用 espresso 框架的 Android 应用mac2macOSmacOS 应用自动化桌面应用windowsWindowsWindows 应用自动化桌面应用safariiOSiOS Safari 浏览器自动化geckoAndroid, iOSFirefox 浏览器自动化chromiumAndroid, macOS, WindowsChromium 浏览器自动化包括 Chrome 比如 安装mac驱动 appium driver install mac2安装后可以用如下命令看是否安装成功。 appium driver list --installed实战 玩了2天发现Appium对mac和win上的桌面应用支持的并不是太好至少兼容性一般。后面我就转到测试android手机上的应用。写了小demo玩玩打开QQ找到某某人发送特定消息。 import timefrom appium import webdriver from appium.options.android import UiAutomator2Options from appium.webdriver.common.appiumby import AppiumBy# Desired Capabilities 配置 desired_caps dict(platformNameAndroid,platformVersion14,deviceNameRFCT20EGLNJ,automationNameUiAutomator2,appPackagecom.tencent.mobileqq,appActivitycom.tencent.mobileqq.activity.SplashActivity,enforceXPath1True,noResetTrue )# 连接 Appium Server driver webdriver.Remote(http://127.0.0.1:4723, options UiAutomator2Options().load_capabilities(desired_caps))try:# 等待并点击搜索按钮search_button driver.find_element(AppiumBy.ID, com.tencent.mobileqq:id/wwk)search_button.click()time.sleep(2)# 等待搜索输入框并输入 QQ 号码search_layout driver.find_element(AppiumBy.ID, com.tencent.mobileqq:id/jo9)location search_layout.locationsize search_layout.size# 点击搜索框聚焦driver.tap([(location[x] size[width] / 2, location[y] size[height] / 2)], 500)# 输入qq号码driver.press_keycode(16)driver.press_keycode(10)driver.press_keycode(9)driver.press_keycode(16)# 点击qq用户user_list_layout driver.find_element(AppiumBy.XPATH, (//android.widget.LinearLayout[resource-idcom.tencent.mobileqq:id/ecl])[1])# user_button user_list_layout.find_element(AppiumBy.ANDROID_UIAUTOMATOR, text(freedom-studio)) # 可以定位精确匹配user_button user_list_layout.find_element(AppiumBy.ANDROID_UIAUTOMATOR, new UiSelector().textContains(freedom)) # 可以定位模糊匹配# user_button user_list_layout.find_element(AppiumBy.XPATH, .//*[contains(text(), freedom)]) # 无法定位user_button.click()time.sleep(2)# 找到聊天输入框msg_input driver.find_element(AppiumBy.ID, com.tencent.mobileqq:id/input)msg_input.send_keys(hello)# 找到发送按钮send_button driver.find_element(AppiumBy.ID, com.tencent.mobileqq:id/send_btn)send_button.click()print(Message sent successfully!)finally:# 退出会话driver.quit()期间要用到Appium Inspector这个工具就是用来定位元素的。 记得要先安装adb工具哦。 其中 appium:deviceName设备名可以通过adb devices获取。 adb devicesappium:appPackage应用包名和appium:appActivity应用界面可以通过如下adb命令获取。 adb shell dumpsys window | grep mCurrentFocus最右边的Selected Element里就有xpathid等信息。如果没有也别感到意外那就是没有只能通过其他方法定位元素了。 比如代码里的 # user_button user_list_layout.find_element(AppiumBy.ANDROID_UIAUTOMATOR, text(freedom-studio)) # 可以定位精确匹配 user_button user_list_layout.find_element(AppiumBy.ANDROID_UIAUTOMATOR, new UiSelector().textContains(freedom)) # 可以定位模糊匹配 # user_button user_list_layout.find_element(AppiumBy.XPATH, .//*[contains(text(), freedom)]) # 无法定位理论上从Appium Inspector里看结构很清晰XPath肯定是可以定位到的但是实际就是不行那只能试试其他方法了比如AppiumBy.ANDROID_UIAUTOMATOR。 坑 玩Appium也遇到不少坑。 Appium对桌面应用程序支持的并不是非常好主要还是用来做手机应用的自动化。比如在mac或者win上Appium Inspector经常无法定位特定元素。我们一般使用ID, XPath来定位元素但是有时候定位不到那也只能另辟蹊径比如用位置坐标来定位再比如用ANDROID_UIAUTOMATOR等等。测试设备是要和启动appium server的机器连接在一起的。
http://www.zqtcl.cn/news/531316/

相关文章:

  • 昆明找工作哪个网站好企业管理咨询包括哪些
  • 网站建设需要c语言吗ui设计培训大概多少钱
  • 门户网站开发语言响应式网站 图片尺寸奇数
  • 域外网站是山东城乡建设厅网站
  • 广州网站建设公司乐云seo598学创杯营销之道模板
  • 中国十大黑科技黑帽seo技巧
  • 阿里巴巴的网站建设与维护北京发布会直播回放
  • 深圳技术支持 骏域网站建设微信官方公众号
  • dns解析失败登录不了网站推广网站平台有哪些
  • 网站建设许可证网页设计找工作
  • 想通过网站卖自己做的东西网络公司如何建网站
  • 商务网站开发实训任务书网站建设验收合格确认书
  • 手机网站百度关键词排名查询wordpress 敏感词
  • 网站分页导航常州网约车哪个平台最好
  • 上海 网站开发设计方案参考网站
  • 网站一键备案外呼电销系统
  • 淘宝客购物网站源码网站项目开发的一般流程
  • 如何更改公司网站内容网站开发需要哪些文档
  • 洛阳建设工程网站宁波led网站建设
  • 五莲网站建设报价wordpress dux 5.3
  • 怎样做当地网站推广做电商要关注哪些网站
  • 安徽鸿顺鑫城建设集团网站设计外贸英文网站
  • 浦口区教育局网站集约化建设南京淄博网站建设方案
  • 学校网站建设的风险分析wordpress侧边栏显示单个分类列表
  • php网站安装图解帮别人建设网站多少利润
  • vs做的网站如何二手优品哪个网站做
  • 建设银行内部网站6建筑学院官网
  • 大学生做微商网站金华seo扣费
  • 以前老网站邯郸推广网络宣传哪家好
  • 网站建设技术网站建设奉节网站建设公司