自动化测试selenium(二)

selenium 相关的API

        Selenium 相关的API非常丰富,涵盖了浏览器操作、元素定位、元素操作、等待机制、键盘与鼠标事件等多个方面。以下是对Selenium常用API的详细归纳:

一、浏览器操作

  1. 初始化浏览器
    • 使用WebDriver的实例化方法(如ChromeDriver、FirefoxDriver等)来启动浏览器。
    • 示例代码:driver = webdriver.Chrome()
  2. 访问URL
    • 使用get()方法访问指定的URL。
    • 示例代码:driver.get('https://www.baidu.com')
  3. 浏览器窗口操作
    • 最大化窗口:driver.maximize_window()
    • 最小化窗口:driver.minimize_window()(注意:并非所有浏览器都支持此操作)
    • 设置窗口大小:driver.set_window_size(width, height)
    • 获取窗口大小:driver.get_window_size()
    • 设置窗口位置:driver.set_window_position(x, y)
    • 获取窗口位置:driver.get_window_position()
  4. 浏览器前进与后退
    • 前进:driver.forward()
    • 后退:driver.back()
  5. 关闭浏览器
    • 关闭当前标签页:driver.close()
    • 关闭整个浏览器:driver.quit()
  6. 刷新页面
    • driver.refresh()
  7. 截图
    • 保存截图为文件:driver.get_screenshot_as_file('screenshot.png')
    • 获取截图为二进制数据:driver.get_screenshot_as_png()

二、元素操作

  1. 点击元素
    • element.click()
  2. 输入文本
    • element.send_keys('text')
  3. 清除文本
    • element.clear()
  4. 获取元素文本
    • text = element.text
  5. 提交表单
    • 如果元素是表单或表单内的元素,可以使用element.submit()来提交表单。
  6. 获取元素属性
    • attribute_value = element.get_attribute('attribute_name')
  7. 判断元素是否可见
    • is_visible = element.is_displayed()

三、等待机制

  1. 显式等待
    • 使用WebDriverWait结合expected_conditions来实现条件等待。
    • 示例代码:WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, 'kw')))
  2. 隐式等待
    • 设置WebDriver在查找元素时的最长等待时间。
    • 示例代码:driver.implicitly_wait(10)

四、键盘与鼠标事件

  1. 键盘事件
    • 使用Keys类来模拟键盘操作,如send_keys(Keys.ENTER)
  2. 鼠标事件
    • 使用ActionChains类来模拟复杂的鼠标行为,如点击、双击、拖拽等。
    • 示例代码:ActionChains(driver).click(element).perform()

定位元素原理

1)CSS选择器定位元素

就是一个语法

类选择器:.class值(s_ipt)

  id选择器:#id的值(#kw)

 父类选择器 子类选择器:父类选择器表达时【空格】子类选择器表达式(#s_kw_wrap #kw)

标签选择器 :标签名(form)

2)xpath定位元素

xpath是一个语法

绝对路径:通过/开头(不常用)

相对路径:通过//开头
  1. 相对路径+索引://form/span[1]/input

2.相对路径+属性值://input[@class="s_ipt"] 

 

3.相对路径+通配符://*[@*="s_ipt"] 

4.相对路径+文本匹配//span[text()=“秦都”]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值