lhl
首页
python
leetcode
产品思想
软件测试
博客 (opens new window)
github (opens new window)
首页
python
leetcode
产品思想
软件测试
博客 (opens new window)
github (opens new window)
  • python

  • leetcode

  • 软件测试

    • 项目开发模型
    • Bug的理解
    • 测试用例
    • 接口测试
    • web自动化测试
      • 适合场景
      • Selenium
    • Pytest
  • Git

  • linux

  • 产品

  • MySql

  • docker

  • test
2023-07-30
目录

web自动化测试

# 接口测试

# web 自动化测试

# 适合场景

  • 版本稳定,无频繁的需求变更
  • 无需思考,流程和结果固定,大量重复性的测试
  • 冒烟测试
  • 回归测试

# Selenium

# 简单使用

from selenium import webdriver
from selenium.webdriver.chrome.service import Service

service = Service('./chromedriver.exe')
driver = webdriver.Chrome(service=service)
driver.get('https://www.baidu.com')

print(driver.title)

# 获取元素

# https://blog.csdn.net/gogowhh/article/details/127546349
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By

option = webdriver.ChromeOptions()
# chrome 会自动进行更新,我的情况是找不到对应的 driver 会闪退
# 我不知道是不是这个问题,所以我加了这个选项果然就不闪退了
# 可能是 driver 版本, 可以 selenium版本,如果不行就回退
option.add_experimental_option("detach",True)
# 去掉 chrome 上面的选项卡
option.add_experimental_option('excludeSwitches', ['enable-automation'])
service = Service('./chromedriver.exe')
driver = webdriver.Chrome(service=service, options=option)

driver.get('https://www.jd.com/')
input_elem = driver.find_element(by=By.ID, value="key")
input_elem.send_keys("篮球")
input_elem_1 = driver.find_element(by=By.CSS_SELECTOR, value="#key")
input_elem.send_keys("足球")

submit_button = driver.find_element(by=By.CLASS_NAME, value="button")
submit_button.click()

  1. 闪退问题参考,https://blog.csdn.net/gogowhh/article/details/127546349 (opens new window)
  2. input_elem = driver.find_element(by=By.ID, value="kw"), 根据id找到元素
  3. submit_button = driver.find_element(by=By.CLASS_NAME, value="button"), 根据class名找到元素

# 句柄

简单理解就是,每一个window和 tab页都是句柄

....
driver.get('https://www.jd.com/')
link_elem = driver.find_element(by=By.LINK_TEXT, value="家用电器")
link_elem.click()


handlers = driver.window_handles
for h in handlers:
    if h != driver.current_window_handle:
        driver.switch_to.window(h)
    print("当前句柄是:", driver.title)
接口测试
Pytest

← 接口测试 Pytest→

最近更新
01
lhl learn notes
02
filter
06-09
03
decorator
06-09
更多文章>
Theme by Vdoing
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式