自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

原创 树的算法基础知识

树是n(n>=0)个结点的有限集。n=0时称为空树。有且仅有一个特定的称为根的结点当n>1时,其余结点可分为m(m>0)个互不相交的有限集T1、T2、......、Tm,其中每一个集合本身又是一棵树,并且称为根的子树树的度:即选取整个树中,出现最大分支的数量为整个树的度结点间的关系:左右分支称为结点的孩子,而结点称为左右分支的双亲,左右分支又互称为兄弟,祖先则是表示从根到该节点所经分支上的所有结点,同一层结点但不同分支称为堂兄弟。

2024-06-04 19:22:58 216

原创 接口测试之XML响应断言

是 XML 路径语言是 XML Path Language 的缩写是用来确定 XML 文档中某部分位置。

2024-05-30 23:32:17 310

原创 接口测试之代理配置

介于客户端与服务器之间可以监听请求和响应信息充当防火墙和 Web 过滤器。

2024-05-30 16:42:14 369

原创 接口测试JSON/XML请求

是JavaScript Object Notation的缩写是一种轻量级的数据交换格式是理想的接口数据交换语言是eXtensible Markup Language的缩写是可扩展标记语言,类似HTML是用来传输和存储数据是通过<>标签来描述信息是W3C的推荐标准XML是一个完整的标记语言,而JSON不是。

2024-05-30 11:37:34 877

原创 接口测试文件上传测试

/第一个表示控件名称,默认为file。//忽略HTTPS校验。//定义本地代理配置。

2024-05-29 23:55:31 233

原创 接口测试多层嵌套断言

【代码】接口测试多层嵌套断言。

2024-05-29 23:29:22 135

原创 接口响应断言

url = “《常见的接口协议》

2024-05-25 00:13:30 466

原创 web自动化文件上传弹框处理

碰到需要上传文件的场景,自动化测试应该如何解决?这两个弹窗有什么区别?

2024-05-23 23:40:34 501

原创 web自动化关键数据记录

代码的执行日志代码执行的截图page source(页面源代码。

2024-05-23 10:38:46 559

原创 web自动化显示等待高级用法

与显示等待近似设定超时时间’设定轮询频率忽略特定类型得到异常。

2024-05-21 23:08:21 236

原创 web自动化高级定位-xpath

对于contains方式,做进一步解说:第一个参数传入匹配方式(文本,@id@name) 第二个参数传入模糊匹配的内容(例如:每日一题)在上图中,tr[1]表示的是tr的第一个对应元素,加上tbody是为了表明我所要查找tr是tbody下的tr。[@id='ember61']")蓝色部分是xpath查找属性必须存在的。nodename表示的是标签名、*表示匹配所有、标签不等于属性。xpath通过索引直接获取对应元素。..使用前一定要加上/如果要匹配属性则需要这样写("

2024-05-21 21:44:38 831

原创 web自动化高级定位-css

括号内填的是在同一堆相同的标签里找顺数第几个——是找爸爸的第几个孩子。对应表达式,注意:不同属性名的不同表达式!是找同种类型的第几个。

2024-05-21 20:14:29 414

原创 web自动化测试中常见控制交互方法

方法一:方法二: 原因:定位到元素后,获取元素的文本信息,属性信息等目的:根据这些信息进行断言或者调试 第二个get是用来通过样式标签的名称,来获取对应的内容。

2024-05-21 13:38:17 189

原创 web自动化强制等待与隐式等待

拓展:在ui自动化测试过程中,经常会出现no such element 的错误,碰到此类错误,第一反应先加强等,确定不是因为等待导致的错误。解决方法:在报错的元素操作之前添加等待即 添加Thread.sleep(3000~10000)。原理:设置一个等待时间,轮询查找(默认0.5秒)元素是否出现,如果没有出现就抛出异常。问题:难以确定元素加载的具体等待时间,避免强制等待时间过多。解决方案:针对于寻找元素的这个动作,使用隐式等待添加配置。注意:添加的内容一定要在报错行之前添加。

2024-05-21 11:44:48 401

原创 web自动化测试的常见控件定位方法

【代码】web自动化测试的常见控件定位方法。

2024-05-21 00:12:29 358

原创 web浏览器控制

上面最大化以及最小化调用的是manage()下的window()的max和min方法,一定要注意!调用了navigate()注意了!

2024-05-20 22:40:39 183

原创 自动化测试用例结构

标准的用例结构:用力标题 前提条件 用例步骤 预期结果 实际结果 测试用例对比:

2024-05-20 22:01:32 246

原创 Selenium介绍与安装

用于web浏览器测试工具支持的浏览器包括:IE、Firefox等使用简单,可以使用java,python等多种语言编写用例脚本主要由三个工具构成:WebDriver、IDE、Grid。

2024-05-19 19:00:29 588

原创 JUnit5禁用测试用例

给用例添加禁用标识被禁用的用例执行后会添加跳过的状态可以禁用测试类、也可以禁用测试方法。

2024-05-18 12:07:47 208

原创 JUnit5标记测试用例

问题:注解比较啰嗦,如果需要设置Tag的地方比较多,代码会显得比较冗余解决方案:直接使用自定义的标签做注解自定义标签:下图四个标签是必须存在的使用自定义标签:使用标签时,标签名对应的是,自定义标签的标签名使用mvn clean test执行。

2024-05-18 01:52:50 397

原创 JUnit5重复测试

即为一条测试用例执行多次。

2024-05-17 15:54:01 254

原创 JUnit5执行顺序

1.通过@TestMethodOrder注解,来编写指定的排序方法为通过Order注解排序,但是需要和@Order注解结合使用。配置了全局后,可直接执行用例,用例则会用全局配置信息标注的方法,去执行用例,然后想用其他方法排序,只要修改$后面的类型即可。2.方法排序-通过DisplayName排序,是通过ASCLL码排列顺序决定的。如果配置了全局信息同时也在方法上配置了注解信息,则会执行方法上的注解信息。3.方法排序-通过Random排序,随机排序,随机执行用例。可以分别指定方法的默认配置和类的默认配置。

2024-05-16 16:43:26 408

原创 JUnit5嵌套测试

测试用例体现业务的层级。

2024-05-16 15:05:58 129

原创 JUnit5显示名称

相当于给用例起别名可以展示在IDE、报告中可以配合其他注解使用@DisplayName适用于方法和类,可以给方法,类重新命名成中文,让老板验收时看的明白。

2024-05-16 11:55:01 342

原创 JUnit5超时处理

使用JUnit5自带的超时处理,当测试用例执行时间超过执行时间,那么用例结果为执行失败。在上图中,无论是BeforeEach还是AfterEach,只要他们超出时长,则会报错。表明@Timeout注解可以结合注解@BeforeEach与@AfterEach。使用@Timeout(int)注解配置超时时间,注解内的参数是以秒为单位的。如上图所示,当配置时间超过了用例执行的超时时间,一旦超出x秒,则用例报错。

2024-05-16 10:32:27 287

原创 JUnit5参数化用例(三)

自动化测试过程中,需要验证某些特殊场景时,需要传空或者传null。

2024-05-15 23:32:05 270

原创 JUnit5参数化用例(二)

注意:@MethodSource(方法名称)要与静态方法名对应;传入的参数类型也要与工厂方法对应。

2024-05-15 17:03:33 228

原创 JUnit5参数化用例(一)

上图中的delimiterString是用来解决符号异常问题,因为正常情况下都是 , 为主,所以用了其他符号就需加上delimiterString来解决。使用单参数注解@ValueSource传递参数化的数据内容:传递参数的过程中,需要通过ValueSource定义的关键字进行类型声明。使用CsvFileSource注解声明参数化数据,使用关键字resources指定文件。注意:文件名前面需要加 /参数化环境配置:pom引入。注意给测试方法添加形参。

2024-05-14 23:38:43 348

原创 JUnit5测试用例调度

执行案例下的所有测试用例,再输入 mvn test前,确保你要执行的文件,你是是否已经在对应文件里面。同样,如果不想这么麻烦输入,也可在maven配置对应的依赖:下图是三种编写方式,选其一即可。出现报错时,先去查看pom.xml文件是否引入了对应的maven依赖。

2024-05-14 20:15:58 140

原创 JUnit5多个类之间的继承关系

在该运行图中,可以发现,当它运行BaseBTest类时,实际上BaseTest也会跟着运行。All执行顺序:父类的先执行,子类的后执行before先执行,after后执行。结果i:在执行子类的过程中,父类的所有的带注解的方法也执行。用例执行顺序:先执行父类,然后再执行子类。

2024-05-13 23:21:52 1036

原创 JUnit5测试用例断言

assertTimeout:超时断言,第一个单位是秒,第二个单位是毫秒,代表3秒超时,如果第二个参数超过第一个参数范围,则报错。assertNotNull:断言对象如果不是null则返回true,如果断言对象是null则返回false。assertEquals:直接调用该方法,这可以实现判断预期结果与实际结果是否相同。assertAll:可以解决assertEquals的弊端,实现所有字段的断言。assertThrows:异常断言,只有用例失败的时候才显示,否则才报错。

2024-05-13 18:17:01 200 1

原创 JUnit5测试用例

4.使用@BeforeEach注解,可以让某方法在每次执行测试程序前都要先执行该方法。5.使用@AfterEach注解,可以让某方法在每次执行测试程序后都要执行该方法。6.@BeforeAll和@AfterAll注解比Each的优先级更高。使用断言,可以判断方法的实际执行结果和预期结果是否一致。2.使用@DisplayName定义别名。3.使用Assertions类的断言方法。1.用@Test注解表示为测试方法。下图是预期与实际不同时报错图。

2024-05-12 23:21:47 333

原创 JUnit5之IDEA便捷操作

然后目标软件包,要与test包中的名字要相同。这样就能生成下图测试类。1.在业务类中右键类,然后点击GoTo中的test这样会打开这样的页面。点击下面的成员,可以快速帮助生成测试方法。

2024-05-11 20:05:43 157 1

原创 JUnit5

启动测试,是一个测试类型的API, Platform定义了这个test引擎在平台运行的新框架的API,并提供了一个控制台的一个启动器,因此可以从命令行启动Platform,这样能为一些GRO和maven这些插件提供一个运行的支持。是JUnit5新增的扩展性的一些东西,在编写我们的测试和扩展,是新编程模型和扩展模型的组合(新增的注解,就是Jupiter引用的)编辑器:IDEA、Eclipse、VScode。编译依赖:Maven、Gradle、Ant。java:JDK11-最新版本都行。

2024-05-11 19:00:50 321 1

原创 python项目中的错误分析与调试

程序出现错误并中断结束后,出现报错信息的错误都是不可怕的,大多都是一些语法性的错误,通过错误的提示信息,就可以快速定位和解决错误。但是有时候通过报错的信息,并不能直接定位出错误,要通过报错的信息,及程序的上下文逻辑来分析真正的报错原因。(类似于来源于带用函数的参数类型报错,引用参数报错等)

2024-05-10 20:16:19 388 1

原创 栈与队列算法题目

解码问题:该问题常出现在复合型的字符组合问题,其中,我们常使用的函数有:charAt():用于获取字符串中指定位置的字符、还有StringBuilder 对象,它能够允许我们进行动态的字符串操作,比如拼接、插入、删除等。只要在解码前,明确需要解码的前缀和后缀是什么,这是为了方便合并。将栈变为队列的操作:需要两个栈的配合,一个为输入栈,一个为输出栈,当将元素通过push操作押入到输入栈中,然后只需将输入栈的元素依次输出出来,然后重新依此输入到输出栈里,这样整个过程就视为栈。

2024-05-10 17:31:57 110

原创 链表算法题目

【代码】链表算法题目。

2024-05-07 23:59:21 530 1

原创 Servlet / HelloServlet

把实现了Servlet接口的java程序叫做,Servletservlet就是sun公司开发动态web的一门技术sun在这些API中提供一个接口叫做:servlet。编写一个类,实现servlet接口。把开发好的hjava类部署到web服务器中。构建一个普通的maven项目,删掉里面的src目录,在项目里面建立Moudel;这个空的工程就是Maven主工程;关于Maven父子工程的理解:父项目中会有<modules></modules><parent></parent>

2024-04-29 00:36:26 768 3

原创 Maven

Maven作用:目前用来方便导入jar包Maven的核心思想:约定大于配置Maven会规定好你该如何去编写java代码,必须要按照这个规范来下载完成后,解压即可。

2024-04-19 15:25:25 620

原创 JavaWeb 之 HTTP

HTTP是超文本传输协议(HyperText Transfer Protocol)的缩写,是互联网上应用最为广泛的一种网络传输协议(一种简单的请求-响应协议)通常运行在TCP上。HTTP负责在互联网上传输数据,如HTML文档、图片、视频、定位、地图 等。它是一个基于TCP/IP通信协议的应用层协议,采用请求-响应模型,这意味着浏览器或其他HTTP客户端向服务器发送请求,服务器则返回响应。http默认端口:80https(表示安全的)默认端口:443。

2024-04-18 09:56:38 405

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除