浏览器操作练习 · 打开关闭

打开页面、断言校验及关闭浏览器会话等操作

首页 浏览器操作导航

页面导读 · 打开/关闭

演示浏览器生命周期管理的 三个核心动作:启动 → 打开页面 → 关闭/退出。多标签、异常中断等场景下有诸多细节需要注意。

三个 API 的本质区别:

⚠️ 常见问题:忘了写 driver.quit(),任务管理器会残留 chromedriver 进程。建议用 try/finally 保证无论成功失败都执行 quit()。

参数配置 打开关闭 页面导航 窗口控制 页面信息 元素交互 Cookie操作 截图保存 超时等待

练习 2 · 打开 / 关闭页面(get / close / quit)

📋 练习要求 · 打开/关闭
概念 生命周期:启动 → 打开页面 → 断言加载 → close(仅关当前标签) / quit(全部退出)
Selenium API webdriver.Chrome / driver.get() / driver.close() / driver.quit() / driver.current_url
练习要点
  • driver.get("url") 打开目标页面,断言 driver.current_url 包含预期域名
  • driver.close() 仅关闭当前标签页;单标签场景下也会连带关掉整个浏览器进程
  • driver.quit() 关闭所有窗口并终止 WebDriver 会话(生产代码唯一正确的退出方式)
  • 多窗口场景用 window.open() 制造多标签,close 只关当前,quit 一次全退
# 快速参考
driver = webdriver.Chrome()
driver.get("https://example.com")
assert "example.com" in driver.current_url
driver.close()    # 关闭当前页
driver.quit()     # 全部退出
📋 本节练习清单
  • ✅ 练习目标 1:打开页面并断言 — webdriver.Chrome() 启动浏览器,driver.get("https://example.com") 打开页面,断言 current_url 包含 example.com
  • ✅ 练习目标 2:close 关闭当前窗口 — driver.close() 仅关闭当前标签页,配合 window.open() 多标签场景演示
  • ✅ 练习目标 3:quit 结束会话 — driver.quit() 关闭所有窗口并结束 WebDriver 会话,验证会话结束后再调用 driver API 会抛出异常
2 练习目标:打开页面 → 断言 → close 关闭 → quit 退出

操作步骤:
① 使用 webdriver.Chrome() 启动浏览器;
② driver.get("目标URL") 打开页面,断言 driver.current_url 包含预期域名;
③ driver.close() 关闭当前窗口;
④ driver.quit() 结束会话。

页面打开/关闭 模拟器
浏览器未启动...

关于我们

Python 自动化测试学习平台是一个面向软件测试工程师、开发人员及在校学生的交互式在线学习平台,专注于 Selenium WebDriver 与 Python unittest 自动化测试技能的教学与实践。

我们以"理论 + 实战 + 可交互演示"为核心特色,将八种常规元素定位和Javascript定位、元素操作、自动化测试工具、单元测试、测试模型等知识体系拆分为模块化课程,每个模块都配有可点击、可输入、可运行的模拟练习页面。

平台致力于降低自动化测试的入门门槛,让学习者从"看懂代码"到"动手实操",逐步掌握企业级自动化测试框架的设计与落地能力。

联系方式

📧邮箱:lq@selenium-auto-test.com

📞电话:0755-12345678

📍地址:深圳

💬微信公众号:Selenium自动化测试

🐙GitHub:github.com/selenium-auto-test

免责声明

1. 本平台所有示例代码、演示页面及教程内容均仅供学习交流使用,不构成任何商业推广或技术服务承诺。

2. 平台中的 Selenium API 描述、Python 语法说明均以官方文档为准,如有版本差异请以对应官方文档为准。

3. 学习者在实际项目中应用平台所学内容时,应结合自身项目环境进行充分测试,本平台不对因直接使用示例代码而产生的任何直接或间接损失承担责任。

4. 本平台所引用的第三方库(Selenium、ChromeDriver、unittest 等)版权归其各自作者及维护者所有。

5. 如涉及版权问题或内容建议,请及时通过联系方式与我们沟通,我们将第一时间处理。

查看参考答案(Python Selenium)
# 练习 2 参考答案
from selenium import webdriver
import selenium.common.exceptions as se_exc

# 启动浏览器
driver = webdriver.Chrome()

# ① 打开页面并断言
driver.get("https://example.com")
assert "example.com" in driver.current_url
print("✅ 页面打开成功:" + driver.current_url)

# ② close 关闭当前窗口(多标签场景演示)
# 用 JS 打开新标签页
driver.execute_script("window.open('https://autotest-505.pages.dev/','_blank')")

# 直接 close 当前标签(默认仍是第一个标签)
driver.close()
print("✅ driver.close() 执行成功")

# ③ quit 关闭全部并结束会话,验证 quit 后再调用会抛异常
driver.quit()
print("✅ quit 已执行,验证 quit 后再调用 driver API 会抛异常...")
quit_ok = False
try:
    driver.current_url  # 会话已结束,应抛异常
except se_exc.NoSuchWindowException:
    quit_ok = True
except se_exc.WebDriverException:
    quit_ok = True
print("✅ 练习 2 完成(quit 后异常已确认)")