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

中国城乡和住房建设部网站首页seo关键词外包公司

中国城乡和住房建设部网站首页,seo关键词外包公司,这个是以前我自己做的一个网站,seo每日一贴一、前置说明 在自动化测试中,经常需要验证多台设备的兼容性,Appium可以用同一套测试运例并行测试多个设备,以达到验证兼容性的目的。 解决思路: 查找已连接的所有设备;为每台设备启动相应的Appium Server&#xff1b…

一、前置说明

在自动化测试中,经常需要验证多台设备的兼容性,Appium可以用同一套测试运例并行测试多个设备,以达到验证兼容性的目的。
解决思路:

  1. 查找已连接的所有设备;
  2. 为每台设备启动相应的Appium Server;
  3. 使用多线程执行 pytest 命令;

二、核心代码

# test_multi_devices.pyimport pytestfrom driver.appium.manager import port_manager@pytest.fixture(scope="session")
def devicename(request):return request.config.getoption("--devicename")@pytest.fixture
def driver(devicename):from driver.appium.driver import WebDriverserver_port = port_manager.get_server_port(devicename)trans_port = port_manager.get_trans_port(devicename)# appium 多设备并行注意事项:# 1. server_port: 必须传值,它是 appium server 的监听端口号,在启动多个 appium server的情况下,用于指定当前driver与哪个 server 进行通信;# 2. uuid: 必须传值,它是每个设备的唯一标识,用于appium server区分与哪台设备在通信,确保测试执行不会混淆;# 3. systemPort: 必须传值,是UiAutomator2 Server的6790端口绑定至本地的端口号,该端口用于在本地监听并接收从 UiAutomator2 Server 发出的请求;appium_server_url = f'http://localhost:{server_port}'capabilities = {"platformName": "Android","automationName": "uiautomator2","deviceName": devicename,"udid": devicename,"app": "D:\\resources\\ApiDemos-debug.apk","systemPort": trans_port}driver = WebDriver(command_executor=appium_server_url, capabilities=capabilities)yield driverdriver.quit()def test_runner(driver):driver.smart_find_element(by='text', value='App').click()driver.smart_find_element(by='text', value='Notification').click()driver.smart_find_element(by='text', value='NotifyWithText').click()driver.smart_find_element(by='text', value='SHOW SHORT NOTIFICATION').click()element = driver.get_toast('Short notification')assert element.text == 'Short notification'
# main.pyimport threading
import pytest
from driver.appium.manager import MobileDevicesManager, AppiumServersManager, device_managerfrom driver.appium.manager import port_managerPY_RUNNER = 'tests/test_multi_devices.py'def start_server_and_run_pytest(devicename):"""启动Appium Server,并且执行pytest"""port = port_manager.get_server_port(devicename)# 为每台设备启动一个appium serverserver_manager = AppiumServersManager(port)server_manager.start_server()# 执行pytestpytest.main([PY_RUNNER, '-s', '-v', '--devicename', devicename])def run_multi_devices():"""多设备并行测试"""devices = device_manager.get_connected_devices()threads = []for devicename in devices:thread = threading.Thread(target=start_server_and_run_pytest, args=(devicename,))threads.append(thread)# 启动线程thread.start()# 等待所有线程完成for thread in threads:thread.join()if __name__ == '__main__':import logging.configlogging.config.fileConfig('conf/logging.conf')# 执行并发测试run_multi_devices()

三、Demo验证

当前有3台设备连接,执行代码,会启动3个appium server:

3台设备会同时执行测试(有1台为手机,不方便截图):

四、appium 多设备并行注意事项

# 1. server_port: 必须传值,它是 appium server 的监听端口号,在启动多个 appium server的情况下,用于指定当前driver与哪个 server 进行通信;# 2. uuid: 必须传值,它是每个设备的唯一标识,用于appium server区分与哪台设备在通信,确保测试执行不会混淆;# 3. systemPort: 必须传值,是UiAutomator2 Server的6790端口绑定至本地的端口号,该端口用于在本地监听并接收从 UiAutomator2 Server 发出的请求;appium_server_url = f'http://localhost:{server_port}'capabilities = {"platformName": "Android","automationName": "uiautomator2","deviceName": devicename,"udid": devicename,"app": "D:\\resources\\ApiDemos-debug.apk","systemPort": trans_port}driver = WebDriver(command_executor=appium_server_url, capabilities=capabilities)

欢迎技术交流:

http://www.hengruixuexiao.com/news/23795.html

相关文章:

  • 网站的建立过程创建网站
  • 做网站的重点目标网站诊断分析
  • 深圳seo整站优化承接抖音优化公司
  • 做网站用身份证徐州seo网站推广
  • 网上免费家装设计网站排名优化怎么做
  • 网站原型设计流程青岛网络推广公司排名
  • 中山网站制作策划流量平台有哪些
  • 佛山手机网站建设网站优化排名方案
  • 可以上传自己做的视频的网站吗百色seo关键词优化公司
  • 自己给网站做优化怎么做惠州疫情最新情况
  • 软件网站怎么做打开百度一下的网址
  • 网站建设自己怎么做网站排名顾问
  • 物流网站制作微信推广图片
  • 免费注册网页的网站qq群排名优化软件购买
  • 凡科网站设计站内推广有哪些具体方式
  • 国外做无纺布的网站龙泉驿网站seo
  • 自媒体app下载搜云seo
  • 做学校网站百度快速seo
  • wordpress导航类网站精准营销的成功案例
  • 十大看免费行情的软件下载大全seo全网营销公司
  • wordpress加cdnseo优化培训公司
  • 广州做网站的网络公司排名公司网站设计与制作
  • godaddy主机到网站建站公司网站建设
  • 站长工具seo综合查询隐私查询北京如何优化搜索引擎
  • 求推荐比较靠谱的代做毕设网站seo快速优化软件网站
  • 网站策划方案1500字四川刚刚发布的最新新闻
  • 在别人网站做的友链_为何百度检测带后缀cnindex.aspseo优化方案策划书
  • 政府网站建设经验超八成搜索网站存在信息泄露问题
  • 微信网站开发报价表一个网站的seo优化有哪些
  • 做标志的网站建立自己的网站