'WebElement'对象没有属性'set_value'

时间:2015-01-07 14:35:45

标签: python python-3.x appium

我想使用appium在android app的editbox中设置一个值。我正在使用python脚本来自动化它。但我总是遇到一些错误 我的python脚本是

import os
import unittest
import time
from appium import webdriver
from time import sleep
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By 
import uiautomator
import math



        element = self.driver.find_element_by_class_name('android.widget.EditText')
        element.set_value('qwerty')
        element = self.driver.find_element_by_name("Let's get started!")
        element.click()
        time.sleep(5)

当我运行它时,我总是收到错误:

AttributeError: 'WebElement' object has no attribute 'set_value'

2 个答案:

答案 0 :(得分:2)

要在WebElement中键入值,请使用Selenium WebDriver方法send_keys

element = self.driver.find_element_by_class_name('android.widget.EditText')
element.send_keys('qwerty')

有关详细信息,请参阅Selenium Python Bindings documentation

答案 1 :(得分:0)

这就像错误一样简单: type元素是,没有set_value(str)或setValue(str)方法。 也许你的意思是

.setText('qwerty')?

因为EditText小部件中没有setText方法: http://developer.android.com/reference/android/widget/EditText.html