操作下拉框中的内容
#encoding=utf-8
import unittest
import time
import chardet
from selenium import webdriver
class VisitSogouByIE(unittest.TestCase):
def setUp(self):
#启动IE浏览器
#self.driver = webdriver.Firefox(executable_path = "e:\\geckodriver")
self.driver = webdriver.Ie(executable_path = "e:\\IEDriverServer")
def test_operateDropList(self):
url = "http://127.0.0.1/test_select.html"
# 访问自定义的html网页
self.driver.get(url)
# 导入Select模块
from selenium.webdriver.support.ui import Select
# 使用xpath定位方式获取select页面元素对象
select_element = Select(self.driver.find_element_by_xpath("//select"))
# 打印默认选中项的文本
print select_element.first_selected_option.text
# 获取所有选择项的页面元素对象
all_options = select_element.options
# 打印选项总个数
print len(all_options)
'''
is_enabled():判断元素是否可操作
is_selected():判断元素是否被选中
'''
if all_options[1].is_enabled() and not all_options[1].is_selected():
# 方法一:通过序号选择第二个元素,序号从0开始
select_element.select_by_index(1)
# 打印已选中项的文本
print select_element.all_selected_options[0].text
# assertEqual()方法断言当前选中的选项文本是否是“西瓜”
self.assertEqual(select_element.all_selected_options[0].text, u"西瓜")
time.sleep(2)
# 方法二:通过选项的显示文本选择文本为“猕猴桃”选项
select_element.select_by_visible_text("猕猴桃")
# 断言已选中项的文本是否是“猕猴桃”
self.assertEqual(select_element.all_selected_options[0].text, u"猕猴桃")
time.sleep(2)
# 方法三:通过选项的value属性值选择value=“shanzha”选项
select_element.select_by_value("shanzha")
print select_element.all_selected_options[0].text
self.assertEqual(select_element.all_selected_options[0].text, u"山楂")
def tearDown(self):
# 退出IE浏览器
self.driver.quit()
if __name__ == '__main__':
unittest.main()