自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(140)
  • 资源 (9)
  • 收藏
  • 关注

原创 Visual Stdio常用快捷键

Visual Studio常用快捷键

2022-08-14 23:23:34 227 1

原创 Java如何获取当前项目路径

使用System.getProperty("user.dir");方法获取当前项目的路径

2022-06-17 21:39:34 1127

原创 IDE设置快捷键自动补全syso

IDE设置syso自动补全System.out.println();

2022-06-09 21:28:29 672

原创 IDE添加项目依赖

IDE添加项目依赖

2022-06-04 17:44:51 360

转载 如何在指定文件夹打开cmd

方法一1.进入指定的文件夹 ,然后选中地址栏,并输入cmd,如下图所示:2.回车,就可以打开对应路径的cmd窗口了,如下图所示:方法二1.进入指定的文件夹,按住Shift建+鼠标右键,然后点击【在此处打开Powershell窗口】即可,如下图所示:原文链接:如何方便快速的在指定文件夹打开cmd_LenFranky的博客-CSDN博客_在文件夹中打开cmd...

2022-04-03 19:16:43 31405 1

转载 websocket 链接返回 http 状态码 101

点击这里查看原文==============================================================================101 状态码简述:切换协议。Switching Protocols 切换协议。服务器根据客户端的请求切换协议。服务器已经理解了客户端的请求,并将通过 Upgrade 消息头通知客户端采用不同的协议来完成这个请求。在发送完这个响应最后的空行后,服务器将会切换到在 Upgrade 消息头中定义的那些协议。首先我们来看个典型

2021-05-22 10:33:53 11931 2

转载 Selenium Webdriver实现的原理及流程

点击查看查看原文链接======================================================用Selenium实现自动化,主要需要三个东西:1.自动化测试代码:自动化测试代码发送请求给浏览器的驱动(比如火狐驱动、谷歌驱动)2.浏览器驱动:它来解析这些自动化测试的代码,解析后把它们发送给浏览器3.浏览器:执行浏览器驱动发来的指令,并最终完成工程师想要的操作。测试代码中包含了各种期望的对浏览器界面的操作,例如点击。测试代码通过给Webdriver发

2021-05-18 11:05:05 263

转载 【转载】testng.xml配置详解

点击这里查看原文===============1.testng.xml的基本格式可以在官网上查看,基本格式如下: <project default="test"> <path id="cp"> <pathelement location="lib/testng-testng-5.13.1.jar"/> <pathelement location="build"/> </path> <task...

2021-05-06 12:49:17 434

转载 【转载】TestNG如何改变一个类中多个@Test的执行次序

点击这里查看原文===============TestNG的一个类中,当含有多个@Test时,默认执行顺序是根据方法名的排序执行,如要改变执行次序,需在@Test中加priority优先级。1.当不指定优先级时,执行结果如下:2.指定优先级时,执行结果如下:3.还可以加是否执行条件,可见执行结果无two,如下:...

2021-05-06 02:42:02 428

转载 【转载】Windows安装Jenkins并修改主目录路径

1.安装jenkins下载地址:https://www.jenkins.io/双击安装下一步选择:设置端口选择JDK位置等Jenkins启动起来,可以看到Jenkins的主目录在C盘,我们需要将他修改到其他盘2.修改主目录路径配置环境变量JENKINS_HOME修改jenkins.xml文件,将其中:<env name="JENKINS_HOME" value="%LocalAppData%\Jenkins\.jenkins"/&g.

2021-05-05 23:34:02 1093

转载 【转载】Java+selenium用js获取元素属性值为空

点击这里查看原文=================现在有一个需求,需要判断【7天内自动登录】是否是勾选状态,如果是勾选状态,则取消勾选!1.在浏览器控制台是可以获取结果的,如下图所示,可以看到复选框默认是勾选状态,checked为true2.然后用java+selenium执行js,代码如下所示:JavascriptExecutor jse = (JavascriptExecutor) driver;Boolean bool = (Boolean) jse.executeScri

2021-05-05 17:25:33 455

原创 Java Selenium学习笔记(十六):发送邮件

1.首先在pom.xml中引入commons-email的依赖jar包,如下所示:<dependency> <groupId>commons-email</groupId> <artifactId>commons-email</artifactId> <version>1.1</version></dependency>2.具体代码如下:package com.imooc.day05

2021-05-05 02:06:28 289

转载 【转载】结合testng实现用例失败重跑

点击这里查看原文===============1.首先需要在项目中添加如下两个类TestNGRetry.javapackage com.imooc.day04;import org.testng.IRetryAnalyzer;import org.testng.ITestResult;/** * 创建类TestNGRetry,实现IRetryAnalyzer接口,并重写retry()方法 * * @author HW * * @date 2021年5月4日 下午4:38

2021-05-04 23:40:29 210

原创 split()分割字符串时,分隔符右侧为空时报ArrayIndexOutOfBoundsException的问题

1.使用split()方法分割里字符串,例如,使用">"分割字符串,具体用法如下代码所示:package com.imooc.day01;public class SplitDemo { public static void main(String[] args) { String user = "mxq>123456"; String username = user.split(">")[0]; String password = user.split(">

2021-05-03 01:17:51 818

转载 【转载】Selenium使用Page Object实现页面自动测试

点击这里查看原文链接============================================================================================================================================================Page Object模式是Selenium中的一种测试设计模式,主要是将每一个页面设计为一个Class,其中包含页面中需要测试的元素(按钮,输入框,标题等),这样在Sel

2021-04-30 00:50:39 176

转载 【转载】charles 结合proxifier进行抓包使用 (可实现对PC客户端抓包)

点击这里查看原文链接==================================================================================介绍:Proxifier是一款功能非常强大的socks5客户端,可以让不支持通过代理服务器工作的网络程序能通过HTTPS或SOCKS代理或代理链。作用:许多网络应用程序不支持通过代理服务器工作,因此不能用于局域网或防火墙后面。这些会损害公司的隐私和导致很多限制。Proxifier解决了这些问题和所有限制,创建

2021-04-20 18:15:51 4708

转载 TestNG之执行顺序

点击这里查看原文链接=============================================================================如果很有个测试方法,并且这几个方法又有先后顺序,那么如果让TestNG按照自己想要的方法执行呢?一、通过Dependencies1.在测试类中添加Dependencies@Test public void test1() { System.out.println("this is test1

2021-04-14 00:04:54 282

转载 【F12】Console命令

点击这里查看原文====================================================================================================$_命令返回最近一次表达式执行的结果 $0会返回最近一次选的DOM结点,以此类推,$1返回的是上上次选的DOM节点,因此$0-$4代表了最近5个你选择过的DOM节点 $简单理解就是 document.querySelector 而已 $$简单理解就是 document.queryS

2021-04-13 00:06:20 408

原创 使用Fiddler Mock100条以上不同的响应数据

1.需求现在有一个测试点:如果今天的作业没有做完就在日期右上角显示数量1,如果有2天的作业没有做完就在日期的右上角显示数量2,同理:如果待做作业的日期超过99天,显示成99+,如下图所示,那么怎样实现显示99+呢?通过抓取接口发现,并没有字段直接控制数量的显示,而是每条数据有个CeateTime字段,如果每个对象的CreateTime日期不同(年月日),那么日期右上角的数量就会改变!2.实现如果使用普通的Mock数据的方法,需要手动增加100条以上的数据,并且每条数据都要修改Crea

2021-04-10 13:20:08 224

原创 使用Charles打请求断点,修改请求数据

1.需求根据学生做题的时长,以及结果对错,题目可分为:【未掌握】、【还需提升】、【熟练掌握】3种类型。具体划分如下所示:做错 或 做对但小于最短时长(3s)===>未掌握 做对并超时(10s)===》还需提升 做对并未超时(3s<=时长<=10s)===》熟练掌握想要模拟以上几种情况,就可以通过打请求断点来实现!2.实现方法2.1.首先使用Charles抓取请求接口,本文需要抓取两个请求接口:/StudyUpdate/v201020(修改做题的时长),/CheckUp

2021-04-02 00:34:17 466

原创 使用Charles Mock响应数据

1.需求根据学生的等级显示不同的段位图标,现在想要验证前端展示的段位图标是否正确,是否与UI一致。如下图所示:共17个等级,每个等级对应一个段位图标,共17个图标例如,一个学生的Level是4,段位图标是秀才,如下图所示,想要展示Level等于5的段位图标应当怎么操作呢?2.实现方法使用Charles打响应断点 Mock响应数据2.1.使用Charles打响应断点具体用法参考打响应断点,修改响应数据这篇文章!2.2.Mock响应数据2.2.1.首先,使用Charles

2021-04-01 23:52:55 754

转载 adb命令安装安卓APK方法和 Failure [INSTALL_FAILED_VERSION_DOWNGRADE]失败原因

点击这里查看原文链接==============================使用adb命令安装安卓apk1、USB连接电脑和手机(平板),记得打开开发者选项中的“USB调试”和“连接USB时总是弹出提醒”2、连接电脑后弹出选择框,选择“传输文件”即可3、打开cmd窗口输入“adb shell”命令查看是否连接成功,成功后再“exit”退出4、输入命令“adb is install -r 要传的apk地址”(也可以直接将apk拖至最后),回车后显示success即完成安装

2021-04-01 13:02:55 3114 1

原创 Appium父节点、兄弟节点的定位

我的目标:想要点击一年级10班下的【请选择学生】按钮如下图所示:具体实现:需要用到父节点和兄弟节点来进行定位!1.通过父节点进行定位parent::或..,选取当前节点的父节点例如,我现在想要获取【一年级】元素的父节点,可通过以下两种方式实现:方式一://android.widget.TextView[@text='一年级']/parent::android.widget.LinearLayout方式二://android.widget.TextView[@text='一年

2021-03-21 00:40:06 2544

转载 js压缩、混淆和加密

点击这里查看原文=================================1.关于三者的定义与区别压缩:删除 Javascript 代码中所有注释、跳格符号、换行符号及无用的空格,从而压缩 JS 文件大小,优化页面加载速度。混淆:经过编码将变量和函数原命名改为毫无意义的命名(如function(a,b,c,e,g)等),以防止他人窥视和窃取 Javascript 源代码,也有一定压缩效果。加密:一般用eval方法加密,效果与混淆相似,也做到了压缩的效果。从定义中可以看出,压缩

2021-03-20 22:11:29 3267

原创 Python学习笔记(十三):类属性、类方法以及静态方法的用法

1.类属性1.1.类属性与实例属性的定义类属性就是类对象所拥有的属性,它被所有类对象的实例对象所共有,在内存中只存在一个副本。 对于公有的类属性,在类外可以通过类对象和实例对象访问。 实例属性即对象属性具体用法,如下:# 定义一个Person类class Person(object): # 类属性 country = "中国" # 构造方法 def __init__(self, name, age): # 实例属性 self

2021-03-06 15:00:37 263

原创 Python学习笔记(十二):面向对象之多态

1.多态的定义当同一个变量在调用同一个方法时,完全可能呈现出多种行为(具体呈现出哪种行为由该变量所引用的对象来决定),这就是所谓的多态。2.多态的实例如下所示:# 定义一个Animal类class Animal(object): def __init__(self, species, color): self.species = species self.color = color# 定义一个子类Dogclass Dog(Animal):

2021-03-06 15:00:20 136 1

原创 Python学习笔记(十一):面向对象之封装

1.封装的意义 将属性和方法放到一起做为一个整体,然后通过实例化对象来处理; 隐藏内部实现细节,只需要和对象及其属性和方法交互就可以了; 对类的属性和方法增加2.访问权限控制。 2.修改私有属性的值如果在属性和方法名前面加了2个下划线'__',则表明该属性和方法是私有权限 使用get_xxx()方法和set_xxx()方法获取和修改私有属性值示例代码如下:# 定义一个Master类class Master(object): def __init__(se

2021-03-06 15:00:00 79 1

原创 Python学习笔记(十):面向对象之继承

1.程序中的继承在程序中,继承描述的是多个类之间的所属关系; 如果一个类A里面的属性和方法可以复用,则可以通过继承的方式,传递到类B里,那么类A就是基类,也叫做父类;类B就是派生类,也叫做子类。示例代码如下:# 定义父类Aclass A(object): # 定义构造方法 def __init__(self): self.num = 10 # 实例化方法 def print_num(self): print(self.num.

2021-03-06 14:59:37 108

转载 离线包简介

传统的 H5 技术容易受到网络环境影响,因而降低 H5 页面的性能。通过使用离线包,可以解决该问题,同时保留 H5 的优点。离线包:是将包括 HTML、JavaScript、CSS 等页面内静态资源打包到一个压缩包内。预先下载该离线包到本地,然后通过客户端打开,直接从本地加载离线包,从而最大程度地摆脱网络环境对 H5 页面的影响。使用 H5 离线包可以给您带来以下优势:提升用户体验:通过离线包的方式把页面内静态资源嵌入到应用中并发布,当用户第一次开启应用的时候,就无需依赖网络环境下载该资源,而是

2021-03-05 14:16:29 5581

原创 工作中遇到的印象深刻的Bug(APP端)

1.学生做题的过程中,手掌误触屏幕会出现笔迹,然后将手掌误触的笔迹删除,学生提交作业后,教师端看到学生做题时正常书写的笔迹页消失了2.作业排序问题:作业A在上面,作业B在下面,长按作业A放到作业B的下面,然后点击刷新,作业A又会变回作业B的上面,原因是因为少调了一个接口:MissionReSort一开始作业如下图所示:长按【手写识别】作业,移动到视频作业的下方,如下图所示:然后点击刷新按钮,【手写识别】作业又会变回视频作业的上方,如下图所示:使用charles抓取接口.

2021-03-04 16:20:46 4219 5

原创 Python学习笔记(九):__str__()方法的用法

1.不定义__str__()方法,使用print直接输出对象的时候,默认打印的是对象的内存地址示例代码如下:# 定义一个类class Person(object): # 构造方法 def __init__(self, name, age): self.name = name self.age = age# 实例化一个对象p = Person("allan", 25)# 当使用print输出对象的时候,默认打印的是对象的内存地址:<__

2021-02-27 23:42:17 769

原创 Python学习笔记(八):创建类和对象,以及__init__()方法的用法

1.创建类和对象1.1.定义类的格式:class 类名: 方法列表1.2.根据类创建一个或多个对象,创建对象的格式如下:对象名1 = 类名()对象名2 = 类名()1.3.示例代码# 定义一个Person类class Person: # 实例方法 def speak(self): print("我在学Python")# 实例化对象p1p1 = Person()# 给p1对象添加属性,以及对应的属性值p1.name = "cr

2021-02-27 18:16:36 1442

原创 Python学习笔记(七):函数章节练习题

1.定义一个函数,该函数可接收一个list作为参数,该函数使用直接选择排序对list排序。'''1.定义一个函数,该函数可接收一个list作为参数,该函数使用直接选择排序对list排序。选择排序的思想:从0索引开始,依次和后面的元素比较,小的往前放,第一次完毕,最小值出现在了最小索引处'''def test(list) : for i in range(len(list) - 1) : for j in range(1 + i, len(list)) : ..

2021-02-22 00:26:39 3792 1

原创 Python学习笔记(六):isalpha()函数的用法

isalpha()方法:判断字符串是否只由字母组成,如果字符串中所有字符都是字母则返回True,否则返回False。str1 = "python"print(str1.isalpha()) #True# 中文的汉字会被isalpha判定为Truestr2 = "我是一只大花猫"print(str2.isalpha()) # True# 如果想区分中文和英文可以使用unicode,中文的范围为:['/u4e00','/u9fa5']print(str2.encode("utf-8").is

2021-02-22 00:26:14 13535

原创 Python学习笔记(五):函数的参数

1.关键字(keyword)参数按照形参位置传入的参数被称为位置参数;如果使用位置参数的方式来传入参数值,则必须严格按照定义函数时指定的顺序来传入参数值。如果根据参数名来传入参数值,则无须遵守定义形参的顺序,这种方式被称为关键字(keyword)参数。如下代码所示:# 定义一个函数def girth(width, height) : print("width:", width) print("height:", height) return 2 * (width +

2021-02-22 00:25:47 267

原创 Python学习笔记(四):函数的定义和调用

1.定义函数和调用函数具体用法如下代码所示:'''1.定义函数和调用函数'''# 定义一个函数,声明两个形参def my_max(x, y) : # 定义一个变量z,该变量等于x、y中的最大值 z = x if x > y else y # 返回变量z的值 return z# 定义一个函数,声明一个形参def say_hi(name) : print("=====正在执行say_hi()函数=====") return "你好,"

2021-02-22 00:25:10 765

原创 Python学习笔记(三):流程控制章节练习题

1.使用while循环遍历列表和元组由于列表和元组的元素都是有索引的,因此可以通过while循环、列表和元组的索引来遍历列表和元组的所有元素。1.1.使用while循环遍历元组,代码如下所示:'''while循环遍历元组'''# 定义一个元组my_tuple = ('Java', 'Python', 'PHP')i = 0while i < len(my_tuple): print("第", (i + 1), "个元素:", my_tuple[i]) i .

2021-02-16 14:59:32 1103 2

原创 Python学习笔记(二):列表、元组和字典章节练习题

1.提示用户输入N个字符串,将它们封装成元组,然后计算并输出该元组乘以3的结果,再计算并输出该元组加上('Java', 'Python')的结果# 方法一:提示用户输入N个字符串str1 = input("请输入第一个字符串:")str2 = input("请输入第二个字符串:")str3 = input("请输入第三个字符串:")a_tuple = (str1, str2, str3)print("a_tuple:", a_tuple)# 该元组乘以3的结果b_tuple ..

2021-02-11 15:39:33 2038 1

原创 Python学习笔记(一):变量

1.单行注释和多行注释Python语言允许在任何地方插入空字符和注释,但不能插入到标识符和字符串中间。Python源代码的注释由两种形式:单行注释 多行注释Python使用井号(#)表示单行注释的开始,跟在#号后面直到这行结束为止的代码都将被解释器忽略。单行注释就是在程序中注释一行代码,在Python程序中将#号放在需要注释的内容之前就可以了。多行注释是指一次性将程序中的多行代码注释掉,在Python程序中使用三个单引号或三个双引号将注释的内容括起来。如下代码所示,comment_t

2021-01-24 16:22:42 134 2

转载 语音识别测试点整理

本文是转载文章,点击这里查看原文章

2020-11-30 13:58:48 744

FiddlerScript Mock100条以上不同的响应数据.zip

博客链接:https://blog.csdn.net/weixin_44679832/article/details/115570668

2021-04-10

Selenium学习笔记源代码

博客链接:https://blog.csdn.net/weixin_44679832/article/details/105230245

2020-11-07

接口测试实战(二)_一粒云项目.jmx

一粒云项目脚本,包含:文件的上传、下载以及文件列表的获取等 博客链接:https://blog.csdn.net/weixin_44679832/article/details/104519563

2020-04-13

Jmeter将测试结果写入到Excel中.zip

包含:jxl.jar,CWResultFile.jar以及"Jmeter将测试结果写入到Excel中"的自动化脚本文件等 博客链接:https://blog.csdn.net/weixin_44679832/article/details/104496807

2020-04-13

输出一份美观的测试报告.zip

测试报告模板与相关jar包,在博客"登录脚本PO设计模式"中会用到! 博客链接:https://blog.csdn.net/weixin_44679832/article/details/105230245

2020-04-01

Ajax小练习之省市联动.zip

通过ajax实现省市联动效果, 博文链接:https://blog.csdn.net/weixin_44679832/article/details/92794300

2020-01-06

WebDriver元素定位之注册页面.zip

为了更好地学习WebDriver的八种定位元素的方式,我们使用附件中的注册页面来练习自动化脚本的设计。 博文链接:https://blog.csdn.net/weixin_44679832/article/details/103807698

2020-01-06

WebDriver元素定位案例所需页面.zip

为了更好地学习WebDriver的八种定位元素的方式,我们使用附件中的注册页面来练习自动化脚本的设计。 博文链接:https://blog.csdn.net/weixin_44679832/article/details/103807698

2020-01-06

Ajax实例之省市联动.zip

通过ajax实现省市联动效果,博文链接:https://blog.csdn.net/weixin_44679832/article/details/92794300

2019-06-18

空空如也

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

TA关注的人

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