菁英科技(卓目鸟学苑)- 专注软件测试菁英教育

标题: selenium_2021.02.27_代金鑫 [打印本页]

作者: 心向未来    时间: 2021-2-27 09:18
标题: selenium_2021.02.27_代金鑫
等待
1.休眠 sleep()  次选
2.隐式等待   首选
3.显式等待   一般不用

from selenium import webdriver
from selenium.webdriver.support.select import Select
from time import sleep
try:
    driver = webdriver.Chrome()
    driver.get('http://localhost/ranzhi/www/sys/user-login.html')
    driver.maximize_window()
    # 隐式等待 ---等待页面加载完成,参数为最大等待时间,单位是秒
    # 隐式等待语句只需要写一次
    #并不总是有效
    #会浪费一定的时间
    driver.implicitly_wait(10)
    # 用户名
    driver.find_element_by_id('account').send_keys('admin')
    # 密码
    driver.find_element_by_id('password').send_keys('123456')
    # 登陆
    driver.find_element_by_id('submit').click()
    # sleep(2)
    # 点击 “后台管理”
    driver.find_element_by_id('s-menu-superadmin').click()
    # sleep(1)
    # 定位iframe
    iframe = driver.find_element_by_id('iframe-superadmin')
    # 切换到iframe中
    driver.switch_to.frame(iframe)
    # 点击 “添加成员”
    driver.find_element_by_xpath('//*[@id="shortcutBox"]/div/div[1]/div/a/h3').click()
    # sleep(1)
    driver.find_element_by_id('account').send_keys('tom')
    driver.find_element_by_id('realname').send_keys('Tom Cruse')
    driver.find_element_by_id('genderm').click()
    # 索引从0开始
    # 选择部门
    select = driver.find_element_by_id('dept')
    depts = Select(select)
    # 根据value选择部门
    depts.select_by_value('10')
    # 选择角色
    select = driver.find_element_by_id('role')
    roles = Select(select)
    # 根据文本选择角色
    roles.select_by_visible_text('项目经理')
    driver.find_element_by_id('password1').send_keys('123456')
    driver.find_element_by_id('password2').send_keys('123456')
    driver.find_element_by_id('email').send_keys('tom@163.com')
    # 保存
    driver.find_element_by_id('submit').click()
    sleep(2)
    # 点击删除
    driver.find_element_by_xpath('/html/body/div/div/div/div[2]/div/div/table/tbody/tr[2]/td[11]/a[3]').click()
    # 点击取消
    driver.switch_to.alert.dismiss()
    # driver.find_element_by_xpath('/html/body/div/div/div/div[2]/div/div/table/tbody/tr[2]/td[11]/a[3]').click()
    # 点击确定
    # driver.switch_to.alert.accept()
except Exception as e:
    print(e)
finally:
    # sleep(2)
driver.quit()
from selenium import webdriver
from selenium.webdriver.common. by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from time import sleep
try:
    driver = webdriver.Chrome()
    driver.get('https:///www.baidu.com')
    driver.maximize_window()
    # By.ID 定位
    # driver.find_element_by_id('kw').send_keys('元宵节')   专用
    driver.find_element(By.ID,'kw').send_keys('元宵节')   # 通用  
    # 显式等待
    # driver   浏览器
    # 5   最大等待时间
    #0.5   检查时间间隔
    # until()  等待结束的条件
    # 目标元素的定位方式必须以元组的方式出现
    element = WebDriverWait(driver,5,0.5).until(EC.presence_of_element_located((By.ID,'su')))
    element.click()
except Exception as e:
    print(e)
finally:
    sleep(2)
    driver.quit()






欢迎光临 菁英科技(卓目鸟学苑)- 专注软件测试菁英教育 (http://www.zmnxy.com/) Powered by Discuz! X3.4