Selenium基本使用与注意事项

发表于:2014-6-26 11:25

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:小与    来源:51Testing软件测试网采编

#coding=utf-8
from selenium import webdriver
import time
import random
driver = webdriver.Chrome()
driver.get('url')
driver.find_element_by_name('tb_uname').send_keys('username')
driver.find_element_by_name('tb_pwd').send_keys('password')
driver.find_element_by_name('tb_code').send_keys('')
time.sleep(10)
driver.find_element_by_name('btnSave').click()
driver.find_element_by_link_text('xxxx').click()
driver.find_element_by_link_text('yyyy').click()
length = len(driver.find_element_by_xpath("//div[@id='list']").find_elements_by_link_text('编辑'))
for i in range(0,length):
l = random.randint(1,9)
editions = driver.find_element_by_xpath("//div[@id='list']").find_elements_by_link_text('编辑')
edit = editions[i]
edit.click()
driver.find_element_by_id('txtnewstype3').click()
driver.find_element_by_xpath('//ul[@id="typeoption3"]/li[%d]'%l).click()
time.sleep(1)
driver.find_element_by_id('ckhead').click()
time.sleep(1)
driver.find_element_by_id('ckpush').click()
time.sleep(1)
driver.find_element_by_id('btnsave').click()
time.sleep(1)
driver.switch_to_alert().accept()
driver.back()
time.sleep(1)
driver.find_element_by_xpath("//div[@id='list']").find_element_by_link_text('删除').click()
  首先注意事项
  有时页面还没加载出来,脚本找不到元素,就会报错,所以添加思考时间是非常必要的,切记。
  进入一个页面后,简单实用back()函数,再进行查找元素时,会报错,所以要将不断来回查找的元素放进循环体内
  driver.switch_to_alert().accept() 处理弹窗"接受"作用
  l = random.randint(1,9) 随机函数,根据用例要求进行实用
  '[%d]'%l 直白的理解就是将后面 l 的值传递给%d(整数)
  find_element_by_link_text 和 find_elements_by_link_text 有区别,后者主要是查找整个页面相同的函数,即可迭代。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号