• Appium自动化(16)


    如果你还想从头学起Appium,可以看看这个系列的文章哦!

    https://www.cnblogs.com/poloyy/category/1693896.html

    前言

    • 前面我都讲的都是针对 app做UI自动化
    • 今天我们来讲下利用手机浏览器做页面的UI自动化测试
    • 其实跟 app 自动化的 Desired Capabilities 没啥区别,就多了个配置项而已

    直接看代码

    重点添加了 browserName 这个参数

    from time import sleep
    
    from appium import webdriver
    
    # 准备自动化配置信息
    desired_caps = {
        # 移动设备平台
        'platformName': 'Android',
        # 平台OS版本号,写整数位即可
        'plathformVersion': '9',
        # 设备的名称--值可以随便写
        'deviceName': 'test0106',
        # 直接指定浏览器名称参数为chrome【重点添加了这一步】
        'browserName': 'Chrome',
        # 确保自动化之后不重置app
        'noReset': True,
        # 设置session的超时时间,单位秒
        'newCommandTimeout': 6000,
        # 如果不想每次都安装UI2驱动,可以这么设置
        # 指定自动化驱动
        # 'automationName':'UiAutomator2',
        # 'skipServerInstallation':True
        # 使用指定的浏览器驱动-匹配手机上的谷歌浏览器
        'chromedriverExecutableDir': r'C:UsersuserDesktoppysq_appiumd5chromedriver 81'
    }
    
    driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
    driver.implicitly_wait(10)  # 稳定元素
    
    # 操作浏览器内容,接下里可以完全使用selenium的方式去自动化页面
    
    driver.get('https://www.baidu.com/')
    # 用web查找元素的方式查找手机网页内部元素
    sleep(5)
    driver.find_element_by_css_selector('#index-kw').send_keys('百度')
    driver.find_element_by_css_selector('#index-bn').click()
    
    res = driver.find_element_by_css_selector('#se-bn')
    
    print(res.text)
    
    driver.quit()

    注意事项

    如果想指定其他浏览器,必须要找到对应的驱动才行哦

    在手机浏览器打开的网页,用 selenium 的方式去操作元素就可以了,并不是用 appium

  • 相关阅读:
    JDK8 Optional类使用
    Kafka RocketMQ
    Dubbo,ElasticSearch,JVM,多线程/高并发,消息中间件 常问问题
    Redis
    java jvm 虚拟机
    25 岁做什么,可在 5 年后受益匪浅?
    设计模式
    并发与并行的理解
    多线程学习
    FireFox 如何在当前页面打开书签
  • 原文地址:https://www.cnblogs.com/poloyy/p/12933486.html
Copyright © 2020-2023  润新知