8.软件测试-UI自动化测试
文章平均质量分 73
软件测试-UI自动化测试
少云清
纸上得来终觉浅,绝知此事要躬行
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
selenium_manager- error trying to connect: 远程主机强迫关闭了一个现有的连接
摘要: 使用Selenium测试网页时出现错误"远程主机强迫关闭连接"(错误10054),原因是Chrome浏览器自动更新后与ChromeDriver版本不匹配。解决方法是通过指定ChromeDriver路径来更新驱动版本。示例代码展示了如何导入必要模块、创建Service对象指定驱动路径、初始化浏览器对象并执行测试流程,最后关闭浏览器。关键是在代码中明确设置ChromeDriver的可执行路径,从而解决版本不兼容问题。原创 2026-03-12 20:57:19 · 642 阅读 · 0 评论 -
【UI自动化测试】8_TPshop项目实战 _APP-根据频道搜索新闻
本文介绍了移动端自动化测试的实现过程,主要分为环境准备和APP测试两部分。在环境准备中,通过安卓模拟器连接设备,使用uiautomatorviewer识别元素,并启动Appium Server进行测试。APP测试部分采用PO模式封装页面对象,实现根据频道搜索新闻的功能。测试案例通过定位频道区域并滑动查找目标频道,验证搜索结果。当测试失败时,会将错误截图保存至Allure报告。整个流程展示了从环境搭建到自动化测试执行的完整方案,适用于移动应用的UI自动化测试场景。原创 2026-03-12 20:55:40 · 227 阅读 · 0 评论 -
【UI自动化测试】7_TPshop项目实战 _前台-门户网站
本文介绍了基于PO模式的门户网站自动化测试框架实现。系统采用分层设计,包含页面对象封装层(buyer_page包)和测试脚本层(buyer_script包)。通过IndexPage类实现商品搜索功能,GoodsPage类处理商品详情页和购物车操作。测试用例使用pytest框架编写,包含搜索商品和加入购物车两个核心测试场景。框架实现了浏览器驱动管理、全局商品参数配置、测试顺序控制等功能,并集成allure报告系统捕获异常截图。整个测试流程可重复执行,实现了后台商品发布与前台搜索验证的联动测试。原创 2026-03-11 19:44:11 · 498 阅读 · 0 评论 -
【UI自动化测试】6_TPshop项目实战 _allure测试报告
本文介绍了Allure测试报告的安装与使用方法。首先需下载Allure工具包并配置系统环境变量,安装allure-pytest插件并配置pytest.ini文件。生成测试报告分为两步:运行测试用例生成数据文件,再通过命令行将数据文件转换为HTML格式报告。最后介绍了如何在报告中插入错误截图,使用allure.attach方法指定图片类型即可。文中提供了详细的配置步骤和示例代码,并附有相关操作截图说明。原创 2026-03-11 19:41:21 · 240 阅读 · 0 评论 -
【UI自动化测试】5_TPshop项目实战 _批量运行测试用例(重点)
本文介绍了如何批量运行测试用例及优化代码的方法。主要内容包括:1)通过pytest.ini配置文件实现批量运行测试用例;2)优化代码逻辑,使批量运行时仅打开/关闭一次浏览器;3)使用pytest-ordering插件对测试用例进行排序控制执行顺序;4)添加开关控制批量运行时的浏览器关闭时机;5)通过命令行运行pytest测试。这些优化措施使自动化测试更接近手工测试流程,提高了测试效率。原创 2026-03-10 20:21:31 · 450 阅读 · 0 评论 -
【UI自动化测试】4_TPshop项目实战 _后台管理-新增商品成功
本文介绍了商品管理系统的自动化测试实现,主要包含页面封装和测试脚本两部分。页面封装部分通过AdminBasePage基类实现了后台系统的页面元素定位和操作逻辑,包括登录页面、主页和商品管理页面。测试脚本部分使用Selenium WebDriver完成登录、页面跳转和商品添加的完整流程测试,并包含断言验证和异常处理机制。代码结构清晰,实现了商品管理系统的核心功能测试,包括iframe切换、下拉框选择和表单提交等典型操作场景。测试过程中还加入了截图功能以便于问题排查。原创 2026-03-10 20:18:35 · 211 阅读 · 0 评论 -
【UI自动化测试】3_TPshop项目实战 _一个测试用例脚本编写过程
本文介绍了后台登录测试脚本的编写过程。首先通过PO模式封装登录页面元素定位和操作步骤,包括用户名、密码、验证码输入框和登录按钮的定位及登录方法实现。然后构建测试用例类,在setup阶段初始化浏览器并打开测试网址,在teardown阶段关闭浏览器。测试方法中调用封装好的登录方法执行测试,并通过文本断言验证登录结果,失败时自动截图保存。整个流程展示了从页面封装到测试用例实现的完整测试脚本开发过程。原创 2026-03-09 21:43:09 · 218 阅读 · 0 评论 -
【UI自动化测试】2_TPshop项目实战 _初始化代码编写(重点)
本文摘要: 该代码实现了一个自动化测试工具集,主要包含三个部分:1) DriverUtils类提供Web和App驱动管理功能,支持Chrome浏览器和Appium移动端测试;2) 实用函数包括元素文本获取(el_is_exist_by_text)、元素存在判断(get_el_text)和测试数据读取(build_data);3) pytest配置文件和全局配置模块。工具集实现了跨平台(Web/App)的自动化测试支持,包含驱动管理、元素操作、断言验证等功能,并通过pytest.ini配置了测试报告生成和测试原创 2026-03-09 21:38:57 · 407 阅读 · 0 评论 -
【UI自动化测试】1_TPshop项目实战 _项目介绍(重点)
本文系统介绍了UI自动化测试的实施流程与关键技术。首先明确了自动化测试的适用条件:项目周期长、频繁版本迭代且需求稳定的回归测试场景。实施流程包括需求分析、用例选择、环境搭建、脚本编写等环节,建议在迭代空档期逐步完善脚本。重点阐述了测试用例编写原则:聚焦核心业务流程、优先正向逻辑、保持用例独立性。详细讲解了测试环境搭建步骤,包括Python测试框架安装和虚拟机配置。在脚本编写部分,强调通过分层设计实现代码复用,并展示了页面对象模式的具体应用。最后介绍了测试报告的生成方法。全文为实施UI自动化测试提供了清晰的框原创 2026-03-07 18:05:01 · 255 阅读 · 0 评论 -
【UI自动化测试】3_IOS自动化测试 _使用真机
本文介绍了iOS真机调试与自动化测试的完整流程:1)在Xcode中配置开发者账号并运行程序到真机;2)详细说明WebDriverAgent的配置步骤,包括项目初始化、开发者信息配置及与Appium的集成;3)提供Python自动化测试脚本示例,包含设备参数设置、元素操作和手势控制等核心功能。通过这三个关键步骤,开发者可以完成从基础调试到自动化测试的完整工作流程,实现iOS应用的真机测试自动化。原创 2026-03-07 17:56:31 · 658 阅读 · 0 评论 -
【UI自动化测试】2_IOS自动化测试 _使用模拟器
本文介绍了iOS自动化测试的基本流程:1)通过Xcode运行程序到模拟器;2)使用Appium查看iOS元素特征;3)编写Python自动化脚本实现点击、滑动、输入等操作。关键点包括:使用Appium的WebDriver配置iOS设备参数,通过find_element方法定位元素,注意swipe方法在模拟器上的兼容性问题,建议使用execute_script替代。文中还提供了完整示例代码,并提醒需关闭模拟器的硬件键盘连接功能以确保Appium正常工作。原创 2026-03-06 21:24:46 · 359 阅读 · 0 评论 -
【UI自动化测试】1_IOS自动化测试 _环境搭建
本文介绍了iOS自动化测试环境的搭建方法。Mac端需要配置:macOS 10.13.6系统、Xcode 10.1、Appium Desktop 1.10、Python 3.6.1等基础软件,以及ios-deploy、libimobiledevice等依赖库(通过brew和cnpm安装)。测试设备需准备iOS 12.1.2系统的手机和Apple ID。重点说明了WebDriverAgent框架的获取方式和libimobiledevice安装失败的解决方案。环境搭建完成后可进行iOS应用的真机与模拟器自动化测试原创 2026-03-06 21:19:24 · 271 阅读 · 0 评论 -
【UI自动化测试】14_Appium基础 _WebView环境搭建和使用
摘要: WebView App是通过手机浏览器访问的项目,其元素无法直接通过UiAutoMatorView查看或定位,需借助浏览器驱动环境实现自动化测试。环境搭建需匹配手机浏览器版本与驱动程序,并通过Appium配置驱动路径。测试时需切换上下文(从Native App到WebView)以定位H5页面元素。示例代码展示了如何打开安卓浏览器、切换上下文并操作WebView元素(如百度搜索框)。核心步骤包括获取上下文列表、切换至WebView环境及后续Web自动化操作。原创 2026-03-05 13:58:42 · 271 阅读 · 0 评论 -
【UI自动化测试】13_Appium基础 _toast环境搭建和使用
本文介绍了移动应用中Toast消息的定位与获取方法。Toast是一种短暂显示的黑底白字提示信息,无法被点击,通常通过XPath或Accessibility ID定位。环境搭建包括安装Node.js、CNPM和Appium-UIAutomator2驱动。获取Toast消息需配置automationName为Uiautomator2,并通过XPath定位元素。示例代码演示了在网易新闻APP中触发Toast消息(如未勾选协议提示)并获取其文本内容的过程,为自动化测试中的断言验证提供了实现方案。原创 2026-03-05 13:54:35 · 458 阅读 · 0 评论 -
【UI自动化测试】12_Appium手机操作 _手机操作API
本文介绍了Appium自动化测试中的三个核心功能:1) 通过driver.get_window_size()获取手机分辨率,动态计算滑动坐标;2) 使用driver.get_screenshot_as_file()进行手机截图,便于问题排查;3) 通过network_connection和set_network_connection()方法获取和设置手机网络类型(如飞行模式、WiFi等)。文中提供了详细的代码示例,包括分辨率获取、截图保存路径设置以及网络状态判断等实用操作,为移动端自动化测试提供了基础技术支原创 2026-03-04 23:49:32 · 566 阅读 · 0 评论 -
【UI自动化测试】11_Appium高级手势API _TouchAction
本文介绍了Appium中的高级手势操作TouchAction,可用于实现滑动、长按、拖动等复杂手势组合。主要内容包括:1)TouchAction基本用法,通过创建对象、调用手势方法并执行;2)轻敲操作(tap)的实现,支持传入元素或坐标;3)按下(press)和抬起(release)操作的使用方法及组合应用。文中提供了详细代码示例,演示了如何在Android设置应用中实现轻敲WLAN按钮、通过坐标操作等场景。这些手势操作可以灵活组合,满足移动端自动化测试中的各种交互需求。原创 2026-03-04 23:47:10 · 703 阅读 · 0 评论 -
【UI自动化测试】10_Appium基础API _滑动和拖拽
本文介绍了Appium中三种滑动操作方法:swipe、scroll和drag_and_drop。swipe通过坐标点实现精准滑动,duration参数控制滑动时间;scroll基于元素实现惯性滑动;drag_and_drop实现无惯性拖拽操作。文章通过《设置》应用示例演示了三种方法的使用场景,并提供了选择依据:swipe适合坐标操作(短duration有惯性,长duration无惯性),scroll适合元素惯性滑动,drag_and_drop适合元素精准拖拽。最后解释了滑动误差可能由CPU计时与实际时间差异原创 2026-03-03 23:12:39 · 460 阅读 · 0 评论 -
【UI自动化测试】9_Appium基础API _元素操作
本文介绍了Appium自动化测试中的元素操作方法及属性获取。主要内容包括:1)模拟点击、输入和清空操作,需注意中文输入需配置unicodeKeyboard参数;2)获取元素文本、大小和位置信息;3)使用get_attribute方法获取元素属性值(如enabled、text等),并指出resourceId和className在不同版本中的兼容性问题。通过《设置》应用实例演示了具体操作步骤,包括定位元素、输入文本、获取属性等完整流程。文中还强调API Level需≥18(Android 4.3+)才能支持部分原创 2026-03-03 23:09:34 · 395 阅读 · 0 评论 -
【UI自动化测试】8_Appium基础API _元素等待
本文介绍了自动化测试中的两种元素等待方式:隐式等待和显式等待。隐式等待通过implicitly_wait()方法设置全局等待时间,适用于所有元素定位;显式等待使用WebDriverWait类,可针对单个元素设置不同等待时间和检测频率。隐式等待操作简单但灵活性差,显式等待更精准但实现稍复杂。相比强制等待sleep(),这两种方式能更高效地处理元素加载问题。选择时需根据测试需求决定:全局统一等待用隐式,特定元素定制等待用显式。原创 2026-03-02 21:34:28 · 604 阅读 · 0 评论 -
【UI自动化测试】7_Appium基础API _元素定位
本文介绍了Appium自动化测试中的元素定位操作API,包括单个元素和一组元素的定位方法。主要内容包括:1) 元素定位的应用场景和基本步骤,强调基于当前屏幕可见元素定位;2) 通过ID、class和xpath三种方式定位单个元素并操作的代码示例;3) 使用相同方法定位一组元素并获取文本内容的实现;4) 元素定位优先级建议(ID > Accessibility ID > XPath等)和7种常见定位写法。文章还指出在自动化测试中可能遇到的元素定位失败问题及解决方法(添加延迟),为移动端自动化测试提原创 2026-03-02 21:31:25 · 814 阅读 · 0 评论 -
【UI自动化测试】6_Appium基础API _App基础操作
本文介绍了使用Appium进行Android应用自动化测试的几种常见操作:1) 应用跳转与获取包名界面名,演示了从设置跳转到通讯录并输出包名和界面名;2) 关闭应用的两种方式,比较了close_app()和quit()的区别;3) 应用的安装与卸载逻辑,根据是否安装QQ执行相应操作;4) 应用后台运行控制,实现应用进入后台5秒后返回前台;5) 区分了热启动和冷启动的概念。这些操作涵盖了Appium测试中的基本应用控制功能,为自动化测试提供了实用参考。原创 2026-02-28 23:00:49 · 428 阅读 · 0 评论 -
【UI自动化测试】5_APP自动化测试 _Appium入门示例(重要)
本文介绍了使用Appium进行APP自动化测试的基础脚本编写方法,重点讲解了如何通过Python脚本启动手机模拟器中的《设置》应用程序。文章包含启动参数配置详解(如平台名称、版本号、包名等)、完整的Python示例代码,以及Appium工作原理说明。同时针对使用小米雷电模拟器时可能出现的签名验证错误,提供了解决方案:需要安装Android SDK中的相应工具包。文中配有详细的错误截图和解决步骤图示,帮助开发者快速定位和解决常见问题。原创 2026-02-28 22:58:20 · 729 阅读 · 0 评论 -
【UI自动化测试】4_APP自动化测试 _UIAutomatorViewer
UIAutomatorViewer是Android SDK中用于获取应用UI元素信息的工具,主要用于自动化测试时的元素定位。使用步骤包括:启动工具后连接设备,打开目标应用界面,点击Device Screenshot按钮捕获当前屏幕,然后选择需要查看的控件即可获取其属性信息(如resource-id)。使用时需注意保持命令行窗口开启,若出现adb连接问题可通过重启adb服务解决。对于模拟器连接,需先通过adb connect命令建立连接。该工具要求JDK1.8环境,闪退时可尝试更换JDK版本。原创 2026-02-27 23:55:56 · 632 阅读 · 0 评论 -
【UI自动化测试】3_APP自动化测试 _ADB调试工具
ADB(Android Debug Bridge)是安卓调试工具,由Client端、Server端和Daemon进程三部分组成,实现电脑与安卓设备的通信。常用命令包括:获取应用包名和界面名(用于自动化测试)、文件传输(push/pull)、测量应用启动时间(am start -W)、获取手机日志(logcat)等。此外,ADB还支持安装/卸载应用、设备连接管理、进入手机系统命令行等功能。这些功能广泛应用于安卓开发和测试中,帮助开发者调试应用、分析性能问题及定位错误日志。原创 2026-02-27 23:54:32 · 1109 阅读 · 0 评论 -
【UI自动化测试】2_APP自动化测试 _测试环境搭建
本文介绍了Android自动化测试环境的搭建流程,主要包括三个核心组件:Java环境、Android SDK和模拟器的安装配置,以及Appium客户端与Python库的部署。详细说明了JDK环境变量设置、SDK工具安装、模拟器选择等步骤,并针对Appium-Python-Client安装过程中可能出现的依赖问题提供了解决方案。通过搭建这套环境,可实现Python代码经Appium中间件驱动手机/模拟器执行自动化测试的完整链路。文中还包含各组件下载地址、配置截图和常见错误处理方法,为Android自动化测试提原创 2026-02-26 19:50:15 · 1068 阅读 · 0 评论 -
【UI自动化测试】1_APP自动化测试 _测试工具介绍
本文介绍了主流移动自动化测试工具及其特点。Robotium是开源的Android测试框架,仅支持Java语言;阿里巴巴开源的macaca支持多平台和跨应用测试。Appium作为最流行的开源工具,支持Android/iOS平台和多种编程语言,具有跨应用能力和活跃社区。文章还通过图示展示了Appium的基本原理和特点,为移动应用自动化测试提供了工具选型参考。原创 2026-02-26 19:48:04 · 534 阅读 · 0 评论 -
【UI自动化测试】6_PO模式 _数据驱动
本文介绍了数据驱动的测试方法及其实现步骤。数据驱动是指将测试数据与代码分离,通过参数化技术实现用例执行,便于维护。实现步骤包括:1)提取测试数据并存储为JSON格式;2)编写读取数据的函数;3)在测试用例中追加参数化技术。文中提供了完整的代码示例,包括页面对象(LoginPage)、基础操作(BasePage)、数据文件(tp_login_data.json)和测试脚本(test_login.py)。通过@pytest.mark.parameterize()实现参数化,使用形参接收测试数据,完成数据驱动的自原创 2026-02-25 21:37:59 · 597 阅读 · 0 评论 -
【UI自动化测试】5_PO模式 _优化PO代码
本文介绍了对Selenium元素定位和输入方法进行二次封装的方法。主要内容包括: 二次封装概念:对第三方工具提供的方法进行改造,添加打印信息和统一使用显示等待方式 项目结构:包含page、base、script等模块,其中base_page.py作为基类存放封装代码 封装实现: 提供find_el()方法实现带日志记录的元素定位 封装input_text()方法实现带清空功能的文本输入 添加frame切换和窗口切换功能 使用方式:通过继承BasePage类来调用封装方法,如LoginPage中的登录操作封装原创 2026-02-25 21:34:06 · 515 阅读 · 0 评论 -
【UI自动化测试】4_PO模式 _PO模式封装
PO模式(Page Object)是自动化测试中常用的设计模式,通过将页面元素封装为对象属性、操作步骤封装为对象方法,实现代码复用和维护便捷。传统方式存在代码冗余、耦合度高、维护成本大的问题,而PO模式将业务代码与测试代码分离,降低耦合性。其实现步骤包括定义页面元素属性、业务方法,并抽取定位信息统一管理。具体代码实现中,创建页面类(如login_page.py)封装元素定位和操作,测试脚本(如test_login.py)只需调用对应方法即可完成测试。该模式有效提升代码可读性、复用性和维护性,特别适合UI频繁原创 2026-02-24 19:25:59 · 771 阅读 · 0 评论 -
【UI自动化测试】3_PO模式 _封装思想
本文介绍了封装思想在自动化测试中的应用,主要包括三个部分:1)封装浏览器驱动工具类DriverUtils,实现单例模式管理驱动对象;2)封装公用函数get_el_text获取元素文本;3)封装函数el_is_exist_by_text判断元素是否存在。通过封装可减少代码冗余、便于维护并隐藏实现细节。代码实现中展示了工具类utils.py的具体封装方法,以及test_login.py测试脚本如何调用这些封装功能进行登录测试,包括账号不存在和密码错误等测试场景的验证。整个设计体现了"用最少代码实现最多原创 2026-02-24 19:23:31 · 522 阅读 · 0 评论 -
【UI自动化测试】2_PO模式 _单元测试框架(重点)
本文介绍了pytest单元测试框架的应用实践。主要内容包括:1)pytest框架优势:可有效组织测试用例、提供丰富断言方法、生成测试报告;2)测试用例组织方式:以测试类对应测试点,测试方法对应具体用例;3)提供了登录测试(test_login.py)和地址管理(test_address.py)两个典型示例,展示类级别setup/teardown方法和具体测试方法实现。文中还指出了当前实现存在的问题,如代码冗余、业务与页面对象未分离等,并给出了常见问题解决方案。示例代码详细演示了XPath定位策略和断言验证的原创 2026-02-21 19:36:54 · 317 阅读 · 0 评论 -
【UI自动化测试】1_PO模式 _面向过程编码
本文介绍了PO(Page Object)设计模式的学习过程,通过版本迭代逐步优化测试代码结构。从最初的面向过程编码(version_01)开始,逐步引入pytest框架(version_02)、Python封装(version_03)、PO模式(version_04)、二次封装优化(version_05)和数据驱动(version_06)。重点展示了version_01阶段的两个登录测试用例(账户不存在和密码错误),暴露了代码冗余、维护困难等问题,为后续优化奠定基础。每个测试用例单独文件包含完整的浏览器操作原创 2026-02-21 19:32:45 · 558 阅读 · 0 评论 -
【UI自动化测试】12_web自动化测试 _验证码处理和cookie
本文介绍了验证码和cookie在Web应用中的处理方式。验证码主要用于防止恶意请求,常用处理方法包括:去掉验证码、设置万能验证码、验证码识别技术和记录cookie(推荐)。重点讲解了cookie技术,它是服务器生成的用户状态标识,可通过Selenium的get_cookie()和add_cookie()方法操作。以百度登录为例,演示了如何通过添加BDUSS cookie实现自动登录,关键步骤包括:获取cookie、添加cookie、刷新页面。该方法适用于使用cookie记录登录状态的系统,但需注意不同网站的原创 2026-02-20 21:23:44 · 804 阅读 · 0 评论 -
【UI自动化测试】11_web自动化测试 _窗口截图
本文介绍了Selenium自动化测试中的窗口截图功能。截图主要用于在测试失败时直观展示错误原因,通过driver.get_screenshot_as_file()方法实现,需指定图片保存路径(如./当前目录或../上级目录)。文章提供了完整案例演示如何在元素定位失败时截图保存,并建议使用时间戳(time.strftime())命名图片以避免重复。关键参数说明和日期格式(%Y_%m_%d %H_%M_%S)也一并列出,帮助开发者快速掌握这一调试技巧。原创 2026-02-20 21:21:18 · 273 阅读 · 0 评论 -
【UI自动化测试】10_web自动化测试 _frame切换、多窗口切换
本文介绍了Selenium自动化测试中的frame切换和多窗口切换技术。在frame切换部分,讲解了如何识别iframe元素、切换frame的方法及操作步骤,并提供了注册表单切换的实例代码。多窗口切换部分阐述了窗口句柄的概念、获取和切换方法,通过案例演示了如何在不同窗口间切换操作,并封装了通用的窗口切换工具函数。最后总结了元素定位失败的常见原因及解决方法,包括检查元素是否在frame中、是否存在多窗口等关键点。这些技术能有效解决Web自动化测试中的元素定位问题。原创 2026-02-19 23:09:19 · 821 阅读 · 0 评论 -
【UI自动化测试】9_web自动化测试 _元素等待
文章摘要:本文介绍了Selenium自动化测试中的三种元素等待方式。1)隐式等待是全局设置,作用于所有元素;2)显式等待针对单个元素,可自定义超时时间和检测频率;3)强制等待通过time.sleep()实现但不推荐。重点讲解了隐式等待(driver.implicitly_wait())和显式等待(WebDriverWait类)的实现方法、使用场景及案例代码,并对比了三种等待方式的优缺点。隐式等待适合简单场景,显式等待更灵活精准,强制等待效率最低。原创 2026-02-19 23:06:31 · 897 阅读 · 0 评论 -
【UI自动化测试】8_web自动化测试 _鼠标操作和键盘操作
本文介绍了Selenium中鼠标和键盘操作的常用方法。鼠标操作封装在ActionChains类中,包括悬停(move_to_element)、右击(context_click)、双击(double_click)和拖拽(drag_and_drop)等方法,使用时需调用perform()执行操作。键盘操作通过Keys类实现,如send_keys(Keys.BACK_SPACE)删除内容。需要注意的是,Selenium不支持操作浏览器默认右键菜单,但可通过快捷键处理部分场景(谷歌浏览器除外)。这些方法能够满足We原创 2026-02-18 13:10:53 · 325 阅读 · 0 评论 -
【UI自动化测试】7_web自动化测试 _页面交互操作(重点)
本文介绍了Web自动化测试中三种常见UI组件的处理方法:下拉框、弹出框和滚动条。对于下拉框,可通过元素定位或Select类处理,后者针对select标签更高效;弹出框分为自定义和JS类型,JS弹窗需使用switch_to.alert处理;滚动条则通过执行JavaScript脚本控制。文章详细说明了每种组件的具体操作方法和代码示例,包括Select类的三种定位方式、JS弹窗的文本获取与操作,以及scrollTo控制滚动条位置。这些方法能有效解决自动化测试中因UI组件导致的交互问题。原创 2026-02-18 13:07:09 · 918 阅读 · 0 评论 -
【UI自动化测试】6_web自动化测试 _浏览器操作
本文介绍了Selenium中常用的浏览器操作方法。主要内容包括:1)窗口控制(最大化、设置尺寸/位置);2)页面导航(前进/后退/刷新);3)窗口关闭(单窗口/全部关闭);4)信息获取(标题/URL)。通过示例代码演示了具体API的使用场景,如maximize_window()实现全屏、refresh()刷新页面等。特别说明了对新窗口操作需要切换窗口,以及title属性可作为窗口标识。最后通过两个完整案例展示了这些方法的实际应用组合,包括窗口调整、页面跳转和浏览器信息获取等典型操作场景。原创 2026-02-17 15:45:40 · 238 阅读 · 0 评论 -
【UI自动化测试】5_web自动化测试 _元素操作和元素信息获取
本文介绍了Selenium自动化测试中的元素操作和信息获取方法。在元素操作部分,详细说明了点击、输入、清除等基础操作,重点讲解了文件上传的两种实现方式:对于<input>标签直接使用send_keys()方法上传文件路径,对于非<input>标签则需借助Autolt工具编写脚本处理系统弹窗。在元素信息获取部分,列举了获取元素尺寸(size)、文本(text)、属性值(get_attribute)的方法,以及判断元素可见性(is_displayed)、可用性(is_enabled)和选原创 2026-02-17 15:43:51 · 459 阅读 · 0 评论
分享