51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 12219|回复: 6
打印 上一主题 下一主题

[Appium] 写了个appium+python程序,元素定位报错,求解

[复制链接]
  • TA的每日心情
    擦汗
    2017-1-5 08:50
  • 签到天数: 29 天

    连续签到: 1 天

    [LV.4]测试营长

    跳转到指定楼层
    1#
    发表于 2016-11-30 11:30:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    6测试积点
    #!/usr/bin/env python
    # -*- encoding:utf-8 -*-
    import sys
    import os
    import time
    import unittest
    from appium import webdriver
    from lib2to3.pgen2.driver import Driver
    from lib2to3.tests.support import driver
    PATH=lambda ps.path.abspath(os.path.join(os.path.dirname(__file__),p))

    desired_caps = {}
    desired_caps['platformName'] = 'Android'
    desired_caps['platformVersion'] = '4.4.3'
    desired_caps['deviceName'] = 'HMB1AMBG'

    #desired_caps['app'] = PATH('F:\\GalanzCloud_2.0.5.3.apk')
    desired_caps['appPackage'] = 'com.galanz.view'
    desired_caps['appActivity'] = 'com.galanz.view.SplashActivity'
    #desired_caps['automationName'] = 'Selendroid'
    print desired_caps
    #如果设置的是app在电脑上的路径,则不需要配appPackage和appActivity,同理反之
    #启动app
    driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)

    #启动app时,需要一定时间进入引导页,所以必须设置等待时间,不然下面会一直报错定位不到元素
    time.sleep(5)
    driver.get_window_size()
    print driver.get_window_size()
    time.sleep(5)
    #driver.background_app(5)
    #driver.launch_app()
    #print(driver.current_activity)
    a = driver.find_element_by_name("G")
    #print

    #driver.quit()

    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    2017-1-5 08:50
  • 签到天数: 29 天

    连续签到: 1 天

    [LV.4]测试营长

    2#
     楼主| 发表于 2016-11-30 11:31:44 | 只看该作者
    appium  version:1.4.16.11
    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    2017-1-5 08:50
  • 签到天数: 29 天

    连续签到: 1 天

    [LV.4]测试营长

    3#
     楼主| 发表于 2016-11-30 11:32:11 | 只看该作者
    报错:
    C:\Python27\python.exe C:/text/apptest/appium1.py
    {'platformVersion': '4.4.3', 'deviceName': 'HMB1AMBG', 'platformName': 'Android', 'appActivity': 'com.galanz.view.SplashActivity', 'appPackage': 'com.galanz.view'}
    {u'width': 480, u'height': 854}
    Traceback (most recent call last):
      File "C:/text/apptest/appium1.py", line 34, in <module>
        a = driver.find_element_by_name("G")
      File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 365, in find_element_by_name
        return self.find_element(by=By.NAME, value=name)
      File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 752, in find_element
        'value': value})['value']
      File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 236, in execute
        self.error_handler.check_response(response)
      File "C:\Python27\lib\site-packages\appium\webdriver\errorhandler.py", line 29, in check_response
        raise wde
    selenium.common.exceptions.NoSuchElementException: Message: An element could not be located on the page using the given search parameters.
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2019-12-31 08:59
  • 签到天数: 975 天

    连续签到: 1 天

    [LV.10]测试总司令

    4#
    发表于 2016-11-30 13:27:28 | 只看该作者
    qq245124928 发表于 2016-11-30 11:32
    报错:
    C:\Python27\python.exe C:/text/apptest/appium1.py
    {'platformVersion': '4.4.3', 'deviceName' ...

    An element could not be located on the page using the given search parameters.

    评分

    参与人数 1测试积点 +10 收起 理由
    lsekfe + 10 积极回复获得测试积点10

    查看全部评分

    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2017-1-23 16:40
  • 签到天数: 32 天

    连续签到: 1 天

    [LV.5]测试团长

    5#
    发表于 2016-11-30 13:34:39 | 只看该作者
    沙发
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2018-3-30 09:35
  • 签到天数: 172 天

    连续签到: 6 天

    [LV.7]测试师长

    6#
    发表于 2017-3-17 13:45:03 | 只看该作者
    a = driver.find_element_by_name("G")这句问题
    尽量避免用这个方法去找元素(by name)
    多去用find_element_by_id(),去看看你要找的这个G元素的id是什么!
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-9-7 13:28
  • 签到天数: 28 天

    连续签到: 1 天

    [LV.4]测试营长

    7#
    发表于 2017-4-6 10:23:30 | 只看该作者
    byname('G') 可能这个页面 有许多name 为G 这样定位不准确,有id 用id,或xpath
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-14 14:33 , Processed in 0.068771 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表