Java企业级Web自动化测试实战
文章平均质量分 80
企业级Web自动化测试指南【JAVA版】专栏,是JAVA工程师的自动化测试宝典。本专栏以实战为核心,系统讲解企业级Web应用的自动化测试方法,涵盖测试策略、工具应用、案例分析等。适合从入门到高级的测试人员,帮助您快速提升测试技能,提高工作效率。加入我们,一起打造高质量的企业级Web应用!
职说测试
资深软件测试专家,拥有超过10年行业经验。作为CSDN的知名博主和内容合伙人,我在Python和软件测试领域持续贡献优质内容。我的专业聚焦于性能测试和自动化测试(API/Ui),并荣获新星计划优秀导师的称号。感谢C站粉丝的持续支持,我致力于分享前沿技术和实战经验,助力您的技术成长。
展开
-
Selenium WebDriver自动化测试(基础篇)--搭建本地开发环境
Selenium WebDriver是一个强大的自动化测试工具,允许测试人员编写脚本模拟用户在浏览器中的操作。安装IDE后,创建一个新的Java项目,并添加Selenium的依赖项。对于不同的浏览器,需要下载不同的WebDriver驱动。通过遵循上述步骤,你应该能够在本地成功搭建Java版Selenium WebDriver的自动化测试环境,并开始编写和执行自动化测试脚本。如果不使用Maven,可以手动下载Selenium WebDriver的JAR文件,并将其添加到项目的类路径中。原创 2024-06-24 08:45:00 · 259 阅读 · 0 评论 -
Selenium WebDriver自动化测试(基础篇):不得不掌握的Java基础
Java基础:磨刀不误砍柴工变量/常量和数据类型、引用数据类型变量:即在java程序运行中会发生改变的值;常量则相反。基本数据类型,数值型:int\long\short\byte\float\double;字符型:char;布尔型:boolean引用数据类型:类Class(Int\Long\Short\Byte\Float\Double\Character、Boolean)、接口interface、数组Array两者的区别:基本数据类型在传值时String字符串类型的相关方法原创 2021-09-15 11:09:44 · 392 阅读 · 0 评论 -
Selenium WebDriver自动化测试(基础篇)--自动化测试工具简介和原理
Web自动化测试框架开篇,不讲架构、也不讲分层,先介绍selenium工具,再理解其工作原理,搭建开发环境并调试通过,能够正常的跑起来,还顺带截图说明了一下selenium不太支持的自动化测试行为,是不太支持不是不能实现。因为那些问题都会在面试过程中被问及,当然会多种解决方案,答案也并不唯一。介绍具来自百度百科Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。原创 2021-03-10 11:53:41 · 381 阅读 · 3 评论 -
Selenium WebDriver自动化测试(基础篇)--HTML基础语法和DOM元素
在Java环境下使用Selenium WebDriver进行自动化测试时,对HTML基础语法和DOM(Document Object Model)元素的理解是至关重要的。本文将介绍HTML的基础语法,并阐述如何在自动化测试中应用DOM元素的相关知识。了解HTML基础语法和DOM元素是自动化测试工程师的必备技能。在Java环境下使用Selenium WebDriver进行自动化测试时,这些知识将帮助我们更准确地定位和操作页面元素,从而编写出更高效、更可靠的测试用例。原创 2024-05-13 08:45:00 · 732 阅读 · 2 评论 -
Selenium WebDriver自动化测试(基础篇):常用的API基本操作
Selenium提供了丰富的API,用于控制浏览器和执行各种操作。WebDriver:这是Selenium的核心接口,用于控制浏览器。通过WebDriver,我们可以启动浏览器、打开网页、执行操作等。WebElement:表示页面上的一个元素,如按钮、输入框等。通过WebElement,我们可以对页面元素进行操作,如点击、输入文本等。Actions:用于模拟复杂的用户操作,如鼠标拖动、键盘快捷键等。:用于等待页面元素加载完成或满足特定条件。原创 2022-06-01 10:51:09 · 246 阅读 · 0 评论 -
Selenium WebDriver自动化测试(基础篇)--元素常用的属性和方法
本文介绍了 Java 版 Selenium WebDriver 中元素的常用属性和方法,并展示了如何封装通用方法以简化测试代码。通过封装,我们可以提高代码的复用性,减少重复代码,使测试脚本更加简洁和易于维护。原创 2024-07-01 08:45:00 · 258 阅读 · 2 评论 -
Selenium WebDriver自动化测试(基础篇)--定位特殊元素的高级应用
本文介绍了Java版Selenium WebDriver在处理特殊Web控件时的高级应用,包括日历选择器、文件上传、滚动操作和失败时截图的方法。通过封装这些操作为通用方法,可以提高测试脚本的复用性和可维护性。这些高级应用对于构建健壮和可靠的自动化测试框架至关重要。原创 2024-09-10 10:09:23 · 171 阅读 · 33 评论 -
Selenium WebDriver自动化测试(基础篇)--不同的浏览器进行自动化测试
通过使用Selenium框架,我们可以轻松地驱动不同内核的浏览器,如Chrome、IE和Firefox。通过配置相应的WebDriver,并在Java代码中指定其路径,我们可以实现自动化测试中的浏览器操作。这为我们提供了更大的灵活性,允许我们在不同的浏览器环境中执行测试。原创 2019-03-27 23:12:00 · 3398 阅读 · 1 评论 -
Selenium WebDriver自动化测试(设计篇):PO设计模式导读!!!
这是一种在自动化测试领域中变得流行的设计模式,尤其是UI自动化,使得框架代码具有可维护性,即可达到减少重复性代码、使得代码更易读、也减少了维护成本、提高代码复用性的目的。tips:可能是在某些线上教育机构,为小白营造高深的技术印象而加分;实际可能应用并不广泛,或使用其他设计模式更为出众。原创 2020-09-09 09:03:49 · 2016 阅读 · 1 评论 -
Selenium WebDriver自动化测试(设计篇):PageFactory重构PO测试设计模式实战
Page Object模式是一种将页面元素与测试逻辑相分离的设计模式。它将每个页面抽象成一个对象,并封装该页面的所有元素及与之相关的操作。这样,当页面元素发生变化时,只需要修改对应的Page Object类,而不需要修改测试逻辑。PO模式,是一种测试模式,先来确定框架的分层:Page层、Case层、Data层;之外可能需要配置层、工具层原创 2022-06-07 00:15:00 · 685 阅读 · 0 评论 -
Selenium WebDriver自动化测试(框架篇)--TestNG测试框架:分组和依赖
TestNG的分组和依赖特性使得测试用例的管理更加灵活,测试方法的优先级、超时设置和执行顺序控制也为测试提供了更多的控制选项。通过封装通用方法,可以进一步提高测试代码的复用性和可读性。原创 2024-05-13 09:55:10 · 266 阅读 · 0 评论 -
Selenium WebDriver自动化测试(框架篇):BDD之Cucumber框架
什么是CucumberCucumber 是一个能够理解用普通语言 描述的测试用例的支持行为驱动开发(BDD)的自动化测试工具,用Ruby编写,支持Java和.Net等多种开发语言。Cucumber术语FeaturestoryscenarioGiven <条件> When <事件> Then <结果>搭建Cucumber环境1、eclipse工具 集成cucumber框架,访问官网了解更多功能;2、pom配置cucumber依..原创 2022-03-24 10:17:57 · 1183 阅读 · 0 评论 -
Selenium WebDriver自动化测试(框架篇)--TestNG测试框架:注解和断言
本文介绍了TestNG测试框架中的注解和断言的使用,以及如何运行TestSuite。通过合理使用注解,可以灵活地控制测试的执行流程和配置。断言是验证测试结果的关键,而封装通用方法可以进一步提高测试代码的复用性和可读性。原创 2024-05-13 09:55:25 · 394 阅读 · 0 评论 -
Selenium WebDriver自动化测试(框架篇):BDD之Cucumber框架项目实战
selenium工具的自动化测试用例,转化成BDD框架的cucumber自然语言脚本。1、Cucumber环境准备,不管是eclipse安装还是pom配置,都需要Cucumber相关组件:<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> .原创 2022-05-04 05:45:00 · 987 阅读 · 0 评论 -
Selenium WebDriver自动化测试(框架篇):@DataProvider实现数据驱动
TestNG是一个功能强大的Java测试框架,它扩展了JUnit的功能,提供了更多灵活的测试方法。TestNG支持注解、分组、依赖注入等功能,并且内置了数据驱动测试的支持。通过使用TestNG的注解,我们可以很方便地实现数据驱动测试。这种方式将测试数据与测试逻辑分离,提高了测试代码的可读性和可维护性。在实际项目中,我们可以根据需要定义多个数据提供方法,用于提供不同类型的测试数据,以满足不同的测试需求。原创 2022-06-01 10:49:10 · 727 阅读 · 0 评论 -
Selenium WebDriver自动化测试(实战篇):关键字驱动框架设计实战(一)
使用和学习selenium好长一段时间了,PO设计模式已经算是耳熟能详了(包含FactoryPage),也了解了BDD行为驱动框架;在关键字驱动框架设计方面,由于对java基础技术的理解难度,没有花时间去整理,故而搁浅,今日重拾,只为提醒自己:世上无难事只怕有心人!框架思想关键字框架,主要用到的技术是反射机制,即在外部数据介质中读取到关键字<它是我们定义在类中的具体的原创 2021-09-02 09:22:11 · 349 阅读 · 0 评论 -
Selenium WebDriver自动化测试(实战篇):关键字驱动框架设计实战(二)
[Java版]selenium关键字驱动框架设计实战(一)_职说测试-CSDN博客关键字框架实现前面已经带领大家认识了java反射,也演示了反射的调用示例,关键字的封装、更有关键字框架的代码实现;接下来就是对这个框架的具体实现进行封装。读取Excel测试用例,需要用到poi工具包<!-- excel读写工具包 --><!-- https://mvnrepository.com/artifact/org.apache.poi/poi --> &l原创 2021-09-15 10:27:26 · 3788 阅读 · 0 评论 -
Selenium WebDriver自动化测试(扩展篇)--Sikuli实现自动化
真的?现在测试工程师的简历都很漂亮,漂亮到五花八门,如果不是找工作需要,结果一问,根本不是那么一回事儿;不是所有会使用的工具到自己手里就变成了掌握。前言:当下职场,互联网急速发展,各种技术也在日新月异,或者叫更新迭代,总之就是作为一个有思想的工程师,学习更多的技能傍身,稍微显得浮躁了,因为谁也不知道...原创 2021-06-02 16:41:53 · 1363 阅读 · 2 评论 -
Java+Selenium框架:八种元素定位方式介绍
选择合适的元素定位方式可以大大提高自动化测试的效率和准确性。在实际项目中,根据页面的结构和元素的特性,灵活应用这些定位方式是非常重要的。同时,也需要注意,某些定位方式可能由于页面结构的变化或者页面元素属性的改变而变得不再适用,因此,定期检查和更新定位方式是必要的。注意:以上代码示例假设你已经设置了Selenium WebDriver(如ChromeDriver)并正确导入了相关依赖库。同时,请确保你的代码运行在正确的Web页面上,并且页面元素与示例中的定位方式相匹配。原创 2019-03-28 22:26:25 · 4458 阅读 · 1 评论 -
Java+Selenium框架:切换窗口和iframes
本文介绍了Java版Selenium WebDriver在处理特殊Web控件和场景时的高级应用,包括切换浏览器窗口、iframe标签页切换和JavaScript弹窗处理的方法。通过封装这些操作为通用方法,可以提高测试脚本的复用性和可维护性。这些高级应用对于构建健壮和可靠的自动化测试框架至关重要。原创 2019-05-23 22:05:07 · 1736 阅读 · 1 评论 -
Java+Selenium框架:隐式等待和显示等待
在自动化测试中,Selenium框架提供了两种主要的等待方式:隐式等待(Implicit Wait)和显示等待(Explicit Wait)。这两种等待方式在Web页面的元素加载中扮演着重要的角色,尤其是在处理动态加载的内容时。隐式等待是一种全局设置,它告诉WebDriver在查找元素时,如果元素没有立即出现,就等待一段时间。这段时间内,WebDriver会轮询DOM来查找元素。使用隐式等待二、显示等待(Explicit Wait)显示等待允许你等待某个特定条件成立时,再继续执行后续的代原创 2019-04-15 23:04:43 · 3433 阅读 · 1 评论 -
Java+Selenium框架: 如何在日历中选择日期
在Web自动化测试中,经常需要处理日期选择控件,特别是那些以日历形式展现的日期选择器。使用Selenium框架结合Java,我们可以轻松地实现自动化选择日期的功能。本文将指导你如何使用Java和Selenium在Web页面上的日历控件中选择特定的日期。原创 2019-05-23 22:11:44 · 2749 阅读 · 1 评论 -
Java+Selenium框架:实现web自动化页面截屏
需求:先假设UI自动化执行case异常或是错误,需要web页面截图,留下证据提交bug;代码如何实现?在Web自动化测试中,除了元素定位和交互操作外,页面截屏也是一个重要的功能。通过截屏,我们可以方便地保存和查看测试过程中的页面状态,从而帮助分析和定位问题。在Java中,结合Selenium框架,我们可以轻松实现Web页面的自动化截屏。原创 2019-04-14 16:58:56 · 2395 阅读 · 1 评论 -
Java+Selenium框架:解决文本框联想内容自动输入
然而,在实际的Web应用中,很多文本框都具备联想功能,即当用户在文本框中输入时,会弹出一个下拉框展示可能的选项。分析:通过F12调试模式,可以定位到文本框标签,联想出来的元素都能通过元素定位找到,点击Consle,输入:document.getElementById(“aria-option-3”)这个网址的联想操作,与携程的联想操作,应该要是一样的,难点:在于找到输入框之下的标签元素。好,明白了,超级厉害,马上F12一开,右键定位页面元素,你会发现,这个联想框是会消失的,根本不可定位;原创 2021-08-24 15:00:52 · 812 阅读 · 0 评论 -
Java+Selenium框架:JavascriptExecutor操作页面元素
背景:JavascriptExecutor接口的应用,在selenium框架中该接口实现的两个方法executeAsyncScript和executeScript,前一个是异步执行js,后一个是同步执行js,根据实际场景选择执行js方法,对于用什么类型的变量接收该方法返回的类型,是根据js语法来的,也就是说执行的js代码返回什么类型,就设置什么样的类型变量接收。如查找元素的方法,selenium已...原创 2019-04-14 15:24:20 · 3025 阅读 · 0 评论 -
Java+Selenium框架:Actions类模拟鼠标/按键操作web
通过Selenium的Actions类,我们可以方便地模拟用户在Web页面上的鼠标和键盘操作,从而实现更加逼真的自动化测试。在实际应用中,结合具体的测试场景,可以灵活使用这些操作来模拟用户的实际行为。原创 2019-05-23 22:07:01 · 3608 阅读 · 1 评论 -
Java+Selenium框架:Keys类模拟键盘按键事件操作web
在自动化测试过程中,模拟键盘按键事件是一个常见的需求。Selenium WebDriver 提供了 Keys 类,该类包含了所有可能的键盘按键值。通过 Keys 类,你可以在测试过程中模拟按下或释放键盘上的各种键,从而实现更复杂的交互操作。原创 2019-05-23 22:08:09 · 3968 阅读 · 1 评论 -
Java+Selenium框架:定位页面元素方法之Xpath-高级定位
在自动化测试领域,Selenium是一个功能强大的工具,它支持多种语言,包括Java。XPath(XML Path Language)是一种在XML文档中查找信息的语言,它同样适用于HTML页面的元素定位。XPath定位方式在Selenium中非常受欢迎,因为它提供了非常灵活和强大的定位能力。原创 2019-04-02 14:56:19 · 5440 阅读 · 1 评论 -
Java+Selenium框架:如何封装一个查找单个元素的通用方法
背景:selenium自动化测试框架,工具封装的类和方法都练习完了,或者说达到了熟练的程度,那么就要开始封装自己的方法,省去那些重复的代码,当然有实力的还可以构造自己的方法,或许是嫌弃selenium里的方法不够干净利落。1、我们知道selenium的原理是通过浏览器模拟用户行为像服务器发送请求,然后得到响应的过程,前面有几篇方法将怎样获取页面元素,继而进一步操作,那么想一下,如果case条目...原创 2019-04-14 22:14:20 · 1586 阅读 · 0 评论 -
Java+Selenium框架:定位页面元素方法之cssSelector-高级定位
练习查找页面页面的方法:css选择器,这里统一在进行演示。在Selenium自动化测试中,定位页面元素是不可或缺的技能。除了常见的ID、Name、XPath等定位方式外,CSS Selector也是一种非常强大且灵活的定位方法。CSS Selector允许你使用CSS的语法来选择页面上的元素,使得定位更加精确和高效。原创 2019-04-01 18:51:54 · 5084 阅读 · 1 评论 -
Java+Selenium框架:如何封装一个查找多个元素的通用方法
在Selenium自动化测试中,经常需要查找页面上的多个元素,并对它们进行一系列的操作。虽然Selenium提供了直接查找单个元素的方法,如,但对于多个元素的查找,我们通常使用方法。为了简化代码并提高可维护性,我们可以封装一个通用的方法来查找多个元素。原创 2019-04-14 22:19:52 · 1419 阅读 · 1 评论 -
Java+Selenium框架:如何封装一个检查页面元素是否存在的通用方法
在自动化测试中,我们经常需要验证页面上的某个元素是否存在。Selenium提供了多种方法来查找元素,但如果元素不存在,这些方法通常会抛出异常。为了更有效地处理这种情况,并避免在每个测试方法中重复相同的检查逻辑,我们可以封装一个通用的方法来检查页面元素是否存在。原创 2019-04-14 22:36:28 · 2904 阅读 · 1 评论 -
Java+Selenium框架:设置属性并解决ie相关问题<补充如何驱动不同内核浏览器篇章>
在自动化测试中,Selenium框架与Java的结合已经成为一种非常流行的选择。然而,在使用Selenium驱动不同内核的浏览器时,尤其是Internet Explorer(IE),我们可能会遇到一些特殊的问题和挑战。本文将重点介绍如何在Java中使用Selenium框架设置浏览器属性,并解决与IE浏览器相关的问题。原创 2019-03-28 20:59:59 · 5582 阅读 · 1 评论 -
Selenium1工具学习笔记(webdriver环境搭建)
写这篇博客的笔记是刚初学的时候,那时候还在1向2版本的进阶,环境的搭建过程相比现在更是繁琐。 相信搜索到这篇的朋友,都已经问过度娘selenium为何物,这里就不再赘述了,直接切入主题:环境搭建。 1、selenium1(关键是selenium IDE只支持在火狐浏览器安装),它通过录制脚本并导出Junit4RC+jave脚本+selenium RC需要运行selenium服务、selenium2(进阶webdriver包括server+serv...原创 2021-08-24 14:53:25 · 148 阅读 · 0 评论 -
Selenium1工具学习笔记(FireFox插件Selenium IDE)
还在使用slenium1的录制UI自动化测试脚本的请继续,不是请绕过! 本篇仅是自己学习的笔记,如有错误,请多交流并指正,谢谢! 1、Selenium是一套完整的Web应用程序测试系统,它包含了测试的录制(Selenium IDE)、编写及运行(Selenium Remote Control)和测试的并行处理(Selenium Grid)。Selenium的核心Selenium Core基于JsUnit,完全由JavaScript编写,因此可运行...原创 2021-08-24 14:52:59 · 150 阅读 · 0 评论