多测师是一家拥有先进的教学理念,强大的师资团队,业内好评甚多的接口自动化测试培训机构!

17727591462

联系电话

您现在所在位置:接口自动化测试培训 > 新闻资讯

接口自动化测试-Selenium常用方法及函数、txt参数化

更新时间:2021-10-09 02:32:19 作者:admin 浏览:263

接口自动化测试-Selenium常用方法及函数、txt参数化

  常用方法及函数:

  1.表单的提交

  方法:submit

  解释:查找到表单(from)直接调用submit即可

  实例:driver.find_element_by_id("form1").submit()

  2.获取CSS的属性值

  方法:value_of_css_property(css_name)

  实例:driver.find_element_by_css_selector("input.btn").value_of_css_property("input.btn")

  3.获取元素的属性值(一组元素中非常实用)

  方法:get_attribute(element_name)

  实例:driver.find_element_by_id("sellaiyuan").get_attribute("sellaiyuan")

  4.判断元素是否被选中

  方法:is_selected()

  实例:driver.find_element_by_id("form1").is_selected()

  5.返回元素的大小

  方法:size

  实例:driver.find_element_by_id("iptPassword").size

  返回值:{'width': 250, 'height': 30}

接口自动化测试-Selenium常用方法及函数、txt参数化

  6.判断元素是否显示(非常实用)

  方法:is_displayed()

  实例:driver.find_element_by_id("iptPassword").is_displayed()

  7.判断元素是否被使用

  方法:is_enabled()

  实例:driver.find_element_by_id("iptPassword").is_enabled()

  8.获取元素的文本值(非常实用)

  方法:text

  实例:driver.find_element_by_id("iptUsername").text

  9.元素赋值

  方法:send_keys(*values)

  实例:driver.find_element_by_id("iptUsername").send_keys('admin')

  10.删除浏览器所有的cookies

  方法:delete_all_cookies()

  实例:driver.delete_all_cookies()

  11.删除指定的cookie

  方法:delete_cookie(name)

  实例:deriver.delete_cookie("my_cookie_name")

  12.设置等待超时时间,可以在设置的时间内智能等待

  方法:implicitly_wait(wait_time)

  实例:driver.implicitly_wait(30)

  13.查看浏览器的名字

  方法:name

  实例:drvier.name

  14.打印title

  方法:title

  实例:deriver.title

  txt参数化:

  以百度为例

  一、把需要的参数写在一个txt文档中进行遍历,示例如下:

  1 #引入所需包

  2 import time,codecs

  3 from selenium.webdriver.common.by import By

  4 from selenium import webdriver

  5

  6 #把打开的文档内容进行utf-8编码

  7 source = codecs.open("123.txt","r","utf-8")

  8 value = source.readlines()

  9 # print(list(value))

  10

  11 #遍历txt文档中的内容

  12 for search in value:

  13 driver = webdriver.Chrome()

  14 url = "https://www.baidu.com/"

  15 driver.get(url)

  16 driver.find_element(By.ID,"kw").send_keys(search)

  17 time.sleep(3)

  18 driver.find_element(By.ID,"su").click()

  19 driver.quit()

  二、把需要的参数写在一个函数中,需要的时候进行调用,示例如下

  函数部分

  1 def fun(user="hanxiaobei",pswd="123456"):

  2 print(u"调用函数成功")

  3 return user,pswd

  代码部分

  1 from selenium.webdriver.common.by import By

  2 from selenium import webdriver

  3 import time

  4 import k1

  5 c2,c3=k1.fun()

  6 # print(k2,k3) #打印是否调用成功

  7

  8 driver = webdriver.Chrome()

  9 url = "https://www.baidu.com/"

  10 driver.get(url)

  11 driver.find_element(By.LINK_TEXT,"登录").click()

  12 time.sleep(3)

  13 driver.find_element(By.ID,"TANGRAM__PSP_10__userName").send_keys(c2)

  14 driver.find_element(By.ID,"TANGRAM__PSP_10__password").send_keys(c3)

  15 time.sleep(20) #由于需要输入验证码,我采用的手动输入,嘎嘎

  16 driver.find_element(By.ID,"TANGRAM__PSP_10__submit").click()

  17 time.sleep(5)

  18 driver.quit()

  三、把需要的参数写在字典中,需要的时候进行调用,示例如下

  字典写成了一个函数,如下

  1 def zidian():

  2 data = {"han":"Hanxiaobei","user":123456,"hanxiaobei1":"1234567890"}

  3 return data

  遍历字典代码部分,如下

  1 from selenium.webdriver.common.by import By

  2 from selenium import webdriver

  3 import time

  4 import k1

  5 info=k1.zidian()

  6 # print(info)

  7 for username,passwd in info.items():

  8 print(username)

  9 print(passwd)

  10 driver = webdriver.Chrome()

  11 url = "https://www.baidu.com/"

  12 driver.get(url)

  13 driver.find_element(By.LINK_TEXT,"登录").click()

  14 time.sleep(3)

  15 driver.find_element(By.ID,"TANGRAM__PSP_10__userName").send_keys(username)

  16 driver.find_element(By.ID,"TANGRAM__PSP_10__password").send_keys(passwd)

  17 time.sleep(20)

  18 driver.find_element(By.ID,"TANGRAM__PSP_10__submit").click()

  19 time.sleep(5)

  20 driver.quit()

  以上是关于Selenium常用方法及函数、txt参数化的介绍,由多测师亲自撰写。https://www.aichudan.com/

联系电话

17727591462

返回顶部