在UI自动化测试中,WebElement的类里面提供了很多的方法可以进行调用,比如进行具体的清空的操作,和
获取一个文本输入框里面输入的关键字的信息。下面详细的演示下这部分的具体应用和案例实战。
一、clear()
clear()的方法是清空的意思,也就说在一个文本输入框里面输入关键字的信息后,调用该方法可以清空里面
的具体信息。下面还是通过具体的案例实战代码来演示下,代码如下:
from selenium import webdriver
import time as t
driver=webdriver.Chrome()
driver.maximize_window()
driver.get('http://www.baidu.com')
so=driver.find_element_by_id('kw')
so.send_keys('无涯 接口测试')
t.sleep(3)
#清空文本输入框里面的信息
so.clear()
t.sleep(3)
driver.quit()
二、get_attribute()
get_attribute()的方法是获取元素属性的值,比如我们可以获取文本输入框里面的友好提示信息,具体如下:
如上的交互中,我们来获取输入框里面的”请输入常用手机号“的提示信息,其实该提示信息主要是在placeholder
里面,下面我们编写代码来实现这部分,案例代码如下:
from selenium import webdriver
import time as t
driver=webdriver.Chrome()
driver.maximize_window()
driver.get('https://www.lagou.com/')
t.sleep(3)
driver.find_element_by_link_text('登录').click()
t.sleep(3)
#获取错误提示信息
login=driver.find_element_by_xpath('/html/body/div[3]/div[1]/div/div/div[2]/div[3]/div[1]/div/div[2]/form/div[1]/div/input')
print(login.get_attribute('placeholder'))
driver.quit()
执行代码后,就可以获取到该输入框里面的友好提示信息。一般性的而言,我们在一个文本输入框里面输入的关键字都是在value
的属性里面,那么我们可以使用value的属性来进行测试,比如获取百度搜索输入框里面的搜索关键字,案例测试的代码如下:
from selenium import webdriver
import time as t
driver=webdriver.Chrome()
driver.maximize_window()
driver.get('http://www.baidu.com')
so=driver.find_element_by_id('kw')
so.send_keys('无涯 API测试')
print('获取搜索输入框输入的搜索关键字:'+so.get_attribute('value'))
driver.quit()
三、is_displayed()
凡事一个方法带is的基本返回的结果都是bool的数据类型,那么它的结果如果是为真的,返回的结果就是True,如果结果是假的,
返回的结果就是False。比如在百度的首页“关于百度”是否可见,我们可以调用该方法,实现的案例代码如下:
from selenium import webdriver
import time as t
driver=webdriver.Chrome()
driver.maximize_window()
driver.get('http://www.baidu.com')
aboutBaidu=driver.find_element_by_xpath('//*[@id="bottom_layer"]/div/p[1]/a')
print('关于百度是否可见:',aboutBaidu.is_displayed())
driver.quit()
四、is_enabled()
该方法主要是检查一个文本信息是否可编辑,一般不能编辑的都是只读属性,也就是readOnly的属性信息,比如我们以百度
搜索输入框为案例,它显示的就是可编辑的,那么它返回的结果信息是True,下面的代码具体来演示这部分,案例代码如下:
from selenium import webdriver
import time as t
driver=webdriver.Chrome()
driver.maximize_window()
driver.get('http://www.baidu.com')
so=driver.find_element_by_id('kw')
print('校验百度搜索输入框是否可编辑:{0}'.format(so.is_enabled()))
driver.quit()
五、is_selected()
该方法返回的结果信息是是否可选中,使用的场景主要为在登录的案例中,一般记住登录都是默认选中的,如下所示:
sina的邮箱自动登录是勾选的,但是在UI自动化测试中我们需要校验这部分是否勾选,那么这个时候使用的方法就是该方法,
结合该案例,测试的代码为:
from selenium import webdriver
import time as t
driver=webdriver.Chrome()
driver.maximize_window()
driver.get('https://mail.sina.com.cn/#')
isLogin=driver.find_element_by_id('store1')
print('校验自动登录是否可勾选:{0}'.format(isLogin.is_selected()))
driver.quit()
感谢您的阅读,后续会持续的进行更新。如果你想持续的提升自己的测试开发的技术栈体系,可扫描如下
二维码参加我的服务端测试开发训练营。