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

网站开发专业分析wordpress文章页实现图片幻灯展现

网站开发专业分析,wordpress文章页实现图片幻灯展现,做网站 属于电子商务,购物网站开发djangoAppium 用来测试手机程序。 测试方面#xff1a; 功能测试安装卸载测试升级测试兼容测试 Android系统版本不同分辨率不同网络 网络切换、中断测试使用中来电话、短信横竖屏切换 环境搭建 Java安装#xff08;查资料#xff09;Android SDK安装#xff0c;配置 HOME和P…Appium 用来测试手机程序。 测试方面 功能测试安装卸载测试升级测试兼容测试 Android系统版本不同分辨率不同网络 网络切换、中断测试使用中来电话、短信横竖屏切换 环境搭建 Java安装查资料Android SDK安装配置 HOME和PATH下载安装Android SDK虚拟机安装夜神模拟器或者使用真机打开调试功能完毕后将Android SDK中的adb替换掉虚拟机里的adb和nox_adb Appium自动化测试工具 安装appnium的程序后确定Java和Andriod的HOME配置了然后点start即可 在python中安装Appium-Python-Client pip install Appium-Python-ClientADB 会在电脑上创建一个服务(ADB服务)手机连接电脑后会与服务建立连接要想发送指令给手机需要把指令发送到ADB服务中然后转发给手机。 ADB: Android Debug Bridge安卓调试桥。通过命令操作手机。 打开模拟器然后adb devices可查看连接到的手机。 常用的终端命令 服务开启关闭 # 关闭 adb kill-server # 开启 adb start-server查看设备 adb devices进入手机终端 adb shell获取信息 # 手机版本信息 adb shell getprop ro.build.version.release # 获取当前手机运行的程序和界面 adb shell dumpsys window | findstr mCurrentFocus文件传输 # 发送文件到手机 adb push 电脑文件 手机位置 # 发送文件到电脑 adb pull 手机文件 电脑位置入门案例 记得先把appium的包安装好 pip install Appium-Python-Client 手机或虚拟机可以先到一个页面然后获取到必要的参数。 常见参数可见pythonappium实现自动化测试 import timefrom appium import webdriver# 连接手机设备 所必须的参数 desired_caps {platformName: Android,deviceName: 127.0.0.1:62001, # 通过 adb devices命令获取appPackage: com.android.settings,appActivity: .Settings, # 这里只取包名后面的内容即可platformVersion:7.1 # 7.1.2 } # 获取到手机实例 driver webdriver.Remote(http://127.0.0.1:4723/wd/hub, desired_capabilitiesdesired_caps)time.sleep(10) # 关闭app driver.close_app() # 释放资源 driver.quit()原理 整体来讲就是自动化测试脚本(python、java等)执行后发送给Appium的服务器服务器再去转发给设备而转发给设置又需要用到了安卓的SDK相关的一些库adb然后再给安卓设备执行。 网上借个图 基础操作 driver close_app() :关闭打开的应用 quit(): 断开连接 install_app(‘apk的在电脑的绝对路径’):安装应用 如果安装失败有可能是AndroidSDK问题或者安装的apk和手机不兼容比如可以试着下载个32位的看看 可以提前看下手机的操作位数。adb shell getprop ro.product.cpu.abi driver.install_app(rD:\environment\python-workspace\iBiliPlayer-bili.apk)remove_app(‘应用包名’):卸载应用 page_source:获取界面的xml源码 current_package:获取当前操作的包名 current_activity:获取当前操作的应用界面名称 is_app_installed(“包名”) 是否已安装 element text:获取文本click() : 点击元素get_attrubute(‘属性名’) : 获取属性值location:获取元素左上角的坐标size: 获取元素宽高字典 el driver.find_element(By.XPATH, //*[text显示]) print(el.get_attribute(text)) print(el.text) print(el.size)根据元素属性定位及操作 driver.find_element(By.XPATH, //*[resource-idcom.android.settings:id/search]).click()time.sleep(1) driver.find_element(By.XPATH, //*[resource-idandroid:id/search_src_text]).send_keys(abc)driver.find_element(By.XPATH, //*[resource-idandroid:id/search_src_text]).send_keys(张三)多次调用send_keys()时它会自己去删掉原内容再输入 支持中文在老版本中send_keys()不支持中文可以这么设置参数 {unicodeKeyboard: True,resetKeyboard: True }元素定位 打开Android SDK的tools中的uiautomatorviewer.bat点击设备屏幕快照获取此App页面上的数据信息。 如果想要其他页面的数据那么在App进入其他应用后再次点击Device Screenshot按钮即可。本文中直接简称 DS 在DS中节点细节中所有的属性基本上都是重复的可以根据text属性来确定唯一定位。 # creator by wlh # date 2023/3/1 17:56 import timefrom appium import webdriver# 连接手机设备 所必须的参数 from selenium.webdriver.common.by import Bydesired_caps {platformName: Android,deviceName: 127.0.0.1:62001, # 通过 adb devices命令获取appPackage: com.android.settings,appActivity: .Settings,platformVersion:7.1 # 7.1.2 } # 获取到手机实例 driver webdriver.Remote(http://127.0.0.1:4723/wd/hub, desired_capabilitiesdesired_caps)time.sleep(5) # 需要注意在Android中text并不是文本而是标签的属性 切记。。 driver.find_element(By.XPATH, //*[text显示]).click()# 关闭app driver.close_app() # 释放资源 driver.quit()滑动拖拽 滑动 swipe(start_x, start_y, end_x, end_y, duration) 需要计算坐标 duration默认600毫秒 driver.swipe(start_x270, start_y640, end_x270, end_y320)如果要做到合理适配所有分辨率的手机那么可以自己去计算即可。 get_window_size()能够获取整个屏幕的宽高。 scroll(origin_el, destination_el) : 只需要原始元素和目标元素点即可 or_ driver.find_element(By.XPATH, //*[text通知]) des_ driver.find_element(By.XPATH, //*[textWLAN]) driver.scroll(origin_elor_, destination_eldes_)拖拽 找到两个元素即可。 el1 driver.find_element(By.XPATH, //*[text酷安]) el2 driver.find_element(By.XPATH, //*[text抖音]) driver.drag_and_drop(el1, el2)高级模拟手势 TouchAction类中的方法实现。 press() 按下(参数既可以使用坐标也可以是元素)release() 释放可和press一起用可以达到click的效果move_to() 移动wait() 等待 presswait长按long_press() 长按tap() 轻敲 可设置敲击的次数比如双击perform() 执行最后一定要写否则设计的动作全都失效 高级手势实现 拖动。 # creator by wlh # date 2023/3/1 17:56 import timefrom appium import webdriver# 连接手机设备 所必须的参数 from appium.webdriver.common.touch_action import TouchAction from selenium.webdriver.common.by import Bydesired_caps {platformName: Android,deviceName: 127.0.0.1:62001, # 通过 adb devices命令获取appPackage: com.android.settings,appActivity: .Settings,platformVersion: 7.1 # 7.1.2 } # 获取到手机实例 driver webdriver.Remote(http://127.0.0.1:4723/wd/hub, desired_capabilitiesdesired_caps)el1 driver.find_element(By.XPATH, //*[text通知]) el2 driver.find_element(By.XPATH, //*[textWLAN])action TouchAction(driver)# 按下 action.press(el1).wait(500).move_to(el2) action.release()# 执行 action.perform()time.sleep(2) # 关闭app driver.close_app() # 释放资源 driver.quit()注意拖动presswaitmove。注意各种手势的合理搭配 设置图形密码案例 在安卓手机中没有出现在手机屏幕中的元素是不会被加载的。 最好在所有的页面跳转后都等一小段时间因为代码执行速度很快很有可能页面还没有加载好元素代码就已经执行了导致报错或者看不到理想的效果。 通过视图工具确定各个点的坐标即可 # creator by wlh # date 2023/3/1 17:56 import timefrom appium import webdriver # 连接手机设备 所必须的参数 from appium.webdriver.common.touch_action import TouchAction from selenium.webdriver.common.by import Bydesired_caps {platformName: Android,deviceName: 127.0.0.1:62001, # 通过 adb devices命令获取appPackage: com.android.settings,appActivity: .Settings,platformVersion: 7.1 # 7.1.2 } # 获取到手机实例 driver webdriver.Remote(http://127.0.0.1:4723/wd/hub, desired_capabilitiesdesired_caps)action TouchAction(driver)el1 driver.find_element(By.XPATH, //*[text声音]) el2 driver.find_element(By.XPATH, //*[textWLAN])action.press(el1).wait(500).move_to(el2).release() # 开始执行 action.perform()time.sleep(1) driver.find_element(By.XPATH, //*[text安全]).click()time.sleep(1) driver.find_element(By.XPATH, //*[text屏幕锁定]).click()time.sleep(1) driver.find_element(By.XPATH, //*[text图案]).click()time.sleep(0.5) # 按下位置 105 450 action.press(x105, y453).wait(200).move_to(x270, y453).wait(200).move_to(x435, y453).wait(200) \.move_to(x270, y615).wait(200) \.move_to(x105, y780).wait(200).move_to(x270, y780).wait(200).move_to(x435, y780) action.release() action.perform()time.sleep(2) # 关闭app driver.close_app() # 释放资源 driver.quit()Driver驱动的其他操作 device_time 获取手机时间get_window_size() 获取屏幕宽高network_connection 获取手机网络信息set_network_connection() 设置网络信息keyevent(按键数字) 点击按键get_screenshot_as_file/save_screenshot(图片路径) : 截图open_notifications() 打开通知栏 # 手机时间 print(driver.device_time)# 屏幕宽高 print(driver.get_window_size())# 网络信息 print(driver.network_connection)# 打开通知栏 driver.open_notifications()# 截图 driver.get_screenshot_as_file(jietu.png)
http://www.w-s-a.com/news/804333/

相关文章:

  • 白银网站建设白银申请网站空间怎么做
  • 免费炫酷网站模板网站建设需要用到什么软件有哪些
  • 电商网站开发 文献综述大型网站建设企业
  • 如何在建设部网站补录项目单仁牛商
  • 社保网站上做减员一直不审核软件程序开发
  • 网站友情链接购买天元建设集团有限公司资质
  • 南山商城网站建设哪家技术好株洲seo网站优化软件
  • 服务类网站建设18款禁用网站app直播
  • 电子商务网站建设需要物流网站开发公司
  • 网站的系统建设方式有哪些内容宁波网站建设公司
  • 网站开发 技术方案品牌建设总要求
  • 中卫网站建站设计seo专员的工作内容
  • h5商城网站是什么意思.net 网站开发框架
  • 西安网站改版的公司软件外包是什么意思
  • 网站建设了解眉山网站优化
  • 做网站用php还是node如何申请网站域名流程
  • 销售公司怎么做网站删除wordpress
  • 毕节网站怎么做seohtml代码特效银河系
  • 淄博品质网站建设网站引导页案例
  • 网站建设虚拟空间小豹子韬韬是哪个网站做的
  • 网络司网站如何建立公司网站建议和规则
  • 织梦网站模板后台密码找回企业vi设计公司性价比高
  • php 爬取网站所有链接传奇手游发布网站
  • 免费软文网站wordpress中文名注册
  • 企业网站建设研究目的意义怎样设计一个公司网站
  • 怎么架构网站便民信息发布平台
  • 网站 建设 现状网站推广合同需要缴纳印花税吗
  • 熊猫头表情包制作网站wordpress 缺省目录
  • 网站浏览图片怎么做的群晖wordpress升级5.0
  • 25个优秀个人网站设计模板网站建设定位分析论文