目录
4、maximize_window()方法---实现浏览器窗口最大化
5、current_window_handle---返回窗口句柄(识别窗口字符串)
7、is_selected()---判断元素是否被选择,多用于选择框
9、is_displayed()---判断元素在页面是否显示
11、quit()-关闭浏览器并杀掉chromedriver.exe 进程。
一、前言
Selenium元素定位与常用方法类似,都是和页面元素打交道。元素定位负责在页面上定位到期望元素,方法则是对这些元素做出一些期望操作。两者的配合使得UI自动化测试变得可能。
二、基本方法
1、send_keys方法---模拟键盘输入
以下示例为:模拟打开百度官网,并在地址栏中输入Selenium
页面元素如下:
1.1 源代码
# <editor-fold desc="Description">
#coding=utf-8
from selenium.webdriver.common.by import By
#引用'webdriver'模块
from selenium import webdriver
# </editor-fold>
import time
def main():
#引用谷歌浏览器
b = webdriver.Chrome()
b.get('https://www.baidu.com')
#执行后,输入字符“Selenium”
b.find_element(By.ID, "kw").send_keys("Selenium")
time.sleep(5)
b.quit()
if __name__ == '__main__':
main()
1.2 运行结果
2、text方法---用于获取文本值
即HTML标签“<a></a>”之间的文字。
以下示例为在百度首页超链接的“新闻”为例。
2.1 源代码
# <editor-fold desc="Description">
#coding=utf-8
from selenium.webdriver.common.by import By
from selenium import webdriver
# </editor-fold>
import time
def main():
#引用谷歌浏览器
b = webdriver.Chrome()
b.get('https://www.baidu.com')
#执行后,控制台打印“新闻”
#selenium3的语法:find_element_by_link_text("新闻")
#b.find_element_by_link_text("新闻").text
# selenium4的语法:find_element(By.LINK_TEXT,"新闻")
c=b.find_element(By.LINK_TEXT,"新闻").text
print(c)
time.sleep(5)
b.quit()
if __name__ == '__main__':
main()
2.2 运行结果
3、get_attribute()方法---用于获取属性值
以百度首页的输入框为例,当输入aaa后,html中的value的值会变成‘aaa’
所以获取百度输入框中的文本值方法是 get_attribute('value')
页面元素如下:
<input id="kw" name="wd" class="s_ipt" value="" maxlength="255" autocomplete="off">
3.1 源代码
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.get('https://www.baidu.com')
element = driver.find_element(By.NAME, 'wd')
element.send_keys(u'aaa\n')
print(element.get_attribute('value'))
3.2 运行结果
4、maximize_window()方法---实现浏览器窗口最大化
4.1源代码
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from selenium import webdriver
import time
def main():
b = webdriver.Chrome()
# 浏览器最大化
b.maximize_window()
time.sleep(5)
b.quit()
if __name__ == '__main__':
main()