zoukankan      html  css  js  c++  java
  • 移动测试之appium+python 入门代码(二)

    ps: 对于环境安装可能会碰到各种问题,还是要一一解决。

    执行:

    appium-doctor

    显示上边界面说明,环境已完成。

    同时将手机连接主机(用数据线) ^_^

    执行

    adb devices

    显示 device 编号信息,说明连接成功。

    以上说明环境安装部分。

    1、Appium配置

      

    打开 "Appium" 工具 ,打开 “Android”小图标(1)

     A:在 "choose" 选择本地apk地址,选择后,重新点开图标后看到相关的信息。

    B: 在 (2)处,device Name 填写手机设备名称

    这里边我们暂时这样。

    2、 Appium测试代码,以百度 apk为例:

    安装完成后,要查看页面的id,可以在配置 android SDK中找到这个程序,点击运行

         

    确保,手机USB连接电脑,点击左侧第二个小图标

    把光标在A处,在右侧 ,会看到 “resource-id” 后边的值,代表该区域ID。这个id下边会用到。其它同理

    test.py  代码

    from appium import webdriver
    import time
    desired_caps = {
                    'platformName': 'Android',
                    'deviceName': 'Galaxy Note4',
                    'platformVersion': '5.1.1',
                    'appPackage': 'com.baidu.searchbox',  
                    'appActivity': 'MainActivity',
                    'unicodeKeyboard': True,  
                    'resetKeyboard': True    
    }
    
    driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
    driver.find_element_by_id("com.baidu.searchbox:id/baidu_searchbox").click()
    driver.find_element_by_id("com.baidu.searchbox:id/SearchTextInput").clear()
    driver.find_element_by_id("com.baidu.searchbox:id/SearchTextInput").send_keys('appium test')
    
    driver.find_element_by_id("float_search_or_cancel").click()
    driver.find_element_by_id("floating_action_button").click()
    
    driver.quit()

    通过这个信息我们知道,对于这个包,上方desired_caps字典中appPackage的值应填写为 com.baidu.search

    而代码中的定位部分的id为com.baidu.searchbox:id/baidu_searchbox,或填写baidu_searchbox

    例:driver.find_element_by_id("com.baidu.searchbox:id/baidu_searchbox").click()

    执行,启动Appium 菜单栏右侧的 ,开始按钮

    在命令执行python代码,手机屏幕不要锁屏。

    程序在手机上会,自动执行。

    参考流程

  • 相关阅读:
    jsp有哪些内置对象?作用分别是什么?
    Servlet API中forward()与redirect()的区别?
    jsp和servlet的区别、共同点、各自应用的范围?
    Servlet的生命周期
    如何从CDN加载jQuery?
    什么是CDN?哪些是流行的jQuery CDN?使用CDN有什么好处?
    window.onload()函数和jQuery中的document.ready()有什么区别?
    jquery中$.get()提交和$.post()提交有区别吗?
    .JQuery有几种选择器?
    如何在JavaScript中每x秒调用一个函数
  • 原文地址:https://www.cnblogs.com/congxueda/p/7338866.html
Copyright © 2011-2022 走看看