吾八哥学Selenium

日期:2019-11-29编辑作者:明仕ms57编程

吾八哥学Selenium。复选框checkbox和单选框radio是web网站里经常会使用到的两个控件,那么在web自动化测试的时候如何利用Selenium来操作这俩控件呢?今天我们就来简单入门练习一下!

html测试页面代码如下:

<html>
 <head> 
  <meta http-equiv="content-type" content="text/html;charset=utf-8" /> 
  <title>学Python网 - selenium学习测试页面</title> 
 </head> 
 <body> 
  <h2>请选择你喜欢的开发语言</h2> 
  <form> 
   <p><input type="checkbox" id="c1" />C/C++</p>
   <p><input type="checkbox" id="c2" />Java</p>
   <p><input type="checkbox" id="c3" />Python</p>
   <p><input type="checkbox" id="c4" />PHP</p>
   <p><input type="checkbox" id="c5" />Golang</p>
  </form> 
  <h2>您是否喜欢您现在的工作?</h2> 
  <form> 
   <p><input type="radio" name="lovework" value="love" id="rlove" />喜欢</p>
   <p><input type="radio" name="lovework" value="hate" id="rhate" />不喜欢</p>
   <p><input type="radio" name="lovework" value="none" id="rnone" />无所谓</p>
  </form>  
 </body>
</html>

吾八哥学Selenium。从HTML代码看,这里面的复选框checkbox和单选框radio都是input标签,那么我们可以遍历出所有的input标签元素了,而且这些元素也都有id,所以find_element_吾八哥学Selenium。吾八哥学Selenium。吾八哥学Selenium。吾八哥学Selenium。by_吾八哥学Selenium。id和find_吾八哥学Selenium。element_吾八哥学Selenium。吾八哥学Selenium。吾八哥学Selenium。by_xpath操作单个元素也都是可行的。

Python代码练习:

# Autor: 5bug
# WebSite: http://www.XuePython.wang
# 学Python网QQ群: 643829693
from selenium import webdriver

driver = webdriver.Chrome("C:/Users/5bug/AppData/Local/Google/Chrome/Application/chromedriver.exe")
driver.maximize_window()
driver.get('file:///E:MyCodesPythondemosXuePython.wanghtmlcheck_radio.html')

#遍历得到checkbox/radio,并勾选指定的checkbox/radio
inputs = driver.find_elements_by_tag_name("input")
for input in inputs:
    # 读取元素id
    attr_id = input.get_attribute("id")
    print(attr_id)
    element_type = input.get_attribute("type")
    if element_type == "checkbox":
        #如果id在爱好的id数组内则勾选
        if input.is_enabled() & (attr_id in ["c1", "c3"]) & (not input.is_selected()):
            input.click()
    elif element_type == "radio":
        #勾选喜欢现在的工作选项
        if (attr_id == "rlove") & input.is_enabled() & (not input.is_selected()):
            input.click() 

这里用到了下面几个方法:

  • find_elements_by_tag_name根据标签名称获得元素列表

  • get_attribute获取某个属性

  • is_enabled方法是用于判断是否可用

  • is_selected方法是用于判断是否选中

  • is_displayed方法是用于判断是否显示

运行输出结果如下:

图片 1

本文首发于学Python网:http://www.XuePython.wang

本文由明仕ms577发布于明仕ms57编程,转载请注明出处:吾八哥学Selenium

关键词:

Python简介

Python是著名的“龟叔”Guido vanRossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言。 Python是用来编...

详细>>

快速导入数据至MSSQL的方法分享,jQuery通过点击行

转自 :http://www.maomao365.com/?p=5613 jQuery的已成为所有时刻的最常用和最喜爱的JavaScript框架之一。它不仅不会减少在Java...

详细>>

魅力python------if - else 语句

    if (maths == 100):get_course +=  "数学、"         get_course +=  "数学、" 2)否则提醒:很遗憾,你没有通过考试,...

详细>>

Python运算符之三元运算符

三元运算符:也称之为条件表达式 [条件为真的结果] if 条件 else[条件为假的结果] 如: ium01 = 100 if 100 200 else 200 prin...

详细>>