自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 测试用例编写指导

1.测试用例定义测试用例是为特定的目的而设计的一组测试输入、执行条件和预期的结果。测试用例是执行的最小实体。简单地说,测试用例就是设计一个场景,使软件程序在这种场景下,必须能够正常运行并且达到程序所设计的执行结果。2.测试用例组成功能模块:比如某检验管理后台模块用例标题:【一级菜单】【二级菜单】具体用例目的版本:当前需求版本号优先级:P0,P1,P2,P3用例类型:功能测试、UI测试、兼容性测试、性能测试、安全测试等前置条件:用来对环境、输入数据、测试账号等做说明。

2024-06-19 14:35:38 813

原创 mysql关系型数据库之数据库表的查询语句

内连接:主要是查询两张表的公共交集部分。列子查询:子查询返回的是一列的数据。外连接:查询其中一个表的全部信息。标量子查询:子查询返回的是一个值。行子查询:子查询返回的是多行数据。二、数据库表查询的分类。

2024-04-09 18:07:27 279

原创 软件测试之风险管理

没有不存在风险的项目。作为测试人员,工作中无处可见风险,所以要学会擦亮你的双眼,及时识别风险,及时评估风险影响范围,及时给出措施降低或者规避风险的措施。下面是我在工作中真真实实遇到的风险。

2024-03-01 22:39:36 818

原创 软件测试用例之设计思路

测试用例可以称为测试前行的指明灯,在减少漏测方面发挥极大的作用,那么如何才能提高测试用例设计的覆盖度和准确性,保证最大程度上无遗漏呢?接下来,本文就测试用例设计方法进行初步探讨,如有更好的见解,请评论留言,博主也学习下。

2024-03-01 17:27:51 808

原创 软件测试管理之日常工作内容

主要是人力,工作量评估,环境资源、测试任务的拆分细化,以及开始时间,完成时间,测试的目标:测试的目标,主要是完成需求的验收,需要达到什么样的标准,比如:bug是否全部修改完成,如果未修改完,遗留的bug影响范围,以及对应的规避手段,无法遗留的bug,测试需要坚持自己的底线,给出问题的影响范围,给出不能遗留的原因,和开发负责人,项目经理、测试经理、版本经理一起开会决策。1、bug的个数,bug的严重程度分布,bug的前后端占比,bug的模块占比,bug的类型(功能类、性能、ui类、配置类、环境类等)

2024-02-26 15:41:29 670

原创 pytest框架学习总结:失败用例如何处理?

5、通过指定–ignore参数忽略测试文件: pytest --ignore=baiduTest/tests/test_start.py。4、跳过用例执行:@pytest.mark.skip() 有条件的判断是否跳过@pytest.mark.skipif()7、执行全部用例,但是首先执行上次失败的用例,再执行其余成功的用例。1、失败重跑: --reruns 2 --reruns-delay 5。6、只执行上次失败的用例,pytest --lf xx.py。

2024-02-20 15:03:29 594

原创 macpro的IDEA常用快捷键~持续更新

Mac下IDEA快捷键总结,作为一个刚接触这个工具的,踩过很多坑,快捷键用起来真的是事半功倍.分享给有这样需求的小伙伴~

2022-10-10 09:11:53 2400

原创 go编译环境配置+goland配置

因为工作中负责的项目有go编写的,有java编写的,有Python编写的,所以之前java还没学完,又要开始学习go了,博主接到这个任务的时候,直接原地崩溃+吐血。。。。。。不会没事,说明自己还有进步的空间。安慰下寄几吧~下面开始说正事。首先学习任何一门语言都绕不过环境的安装。go的安装和Python还有java有点不太一样,我踩了点坑,发现csdn中还是有些文章并不能够一次性到位,按照那个配置还是不行。经过看了大量的关于环境配置的大佬写的文章,终于今天我环境配置好了。只想说,我不是高手,仅仅是初学者,

2022-05-25 15:42:58 2434

原创 git基本操作

本地装好git客户端之后,就可以开始准备连接gitlab了。1、点击git bash here:2、进入如下这样的页面:3、需要连接gitlab,可以通过生成ssh私钥的方式:gitlab中生成ssh私钥:ssh-keygen -t rsa -C "your email address" 生成的是openssh类型的公钥和私钥 4、将上述的公钥放在gitlab中,后续就可以直接操作了5、git clone 将远程仓库中的代码仓库拉到本地git clone git@gitlab.exam

2022-05-18 19:12:05 541 1

原创 java中接口学习总结

1、什么是接口?接口是一种对事物的公用特征进行的抽象,抽象出来的特征放在接口中进行描述,类似类,和类的区别是比类更特别,接口中的内容也有限制,不像类中可以有属性,方法,代码块等等。接口中的成员只能是全局变量、抽象方法、静态方法、默认方法。接口比抽象类还特殊,抽象类其实也是一种特殊类。抽象类不能被实例化,接口也是一样,不能够被实例化,其实从它的定义中就可以得知,接口中只能有抽象方法。接口和类的最大的不同是一个类可以实现多个接口,而一个类不能继承多个类。//A继承了父类B并实现了接口CC,DD,EE

2022-05-01 17:31:20 939

原创 java中构造器学习总结~持续更新

1、构造器是什么?构造器其实就是一个方法。一旦定义了类,那么就会默认继承object类中的构造器,用户可以不显示的去定义,也可以用户自定义,一般在定义对象的时候就会去调用构造器。2、构造器的定义语法:class Person{ int age; String name;//构造方法 public Person(){ } //构造方法重载 public Person(int age, String name){ this.name = name; this.age = age

2022-05-01 16:09:19 632

原创 java中抽象类以及abstract学习总结

1、abstract关键字:可以修饰方法和类。abstract 修饰类,则类不能够被实例化,但是类中有构造方法,可以被子类实例化的时候进行调用来对属性进行初始化。abstract class Person{ String name; int age; String desc; public Person(){ } public Person(int age, String name){ this.age = age; t

2022-05-01 15:57:30 425

原创 java中final的学习总结

1、final和static一样都是修饰符,可以修饰以下:类、方法、变量final修饰类和变量、方法:final class FinalA{ final int num = 10; public final void test(){ }2、使用限制修饰类:类不能够被继承修饰方法:方法不能被重写修饰变量:变量的值不能被修改a.修饰属性public class Final{ final int NUM; public Final(){ NUM = 1; } p

2022-05-01 14:33:19 679

原创 java中代码块之静态代码块和非静态代码块

一、代码块:语法:使用{}包裹的,可以在{}中写代码。修饰符:static 或者不修饰。static修饰的为静态代码代码块。格式: //静态代码块,随着类的加载児执行 static{ System.out.println("这是静态代码块"); }不修饰的为非静态代码块://非静态代码块,随着类的加载,随着对象的创建而执行 { System.out.println("我是一个非静态代码块"); }静态代码块和非静态代码块的加

2022-05-01 12:44:54 2191

原创 使用docker 搭建sonarqube平台

前提条件:已经安装了docker的环境step1:执行如下命令:docker pull postgresdocker pull sonarqubestep2:执行如下命令:打tag,再push到仓库中:[root@test03]# docker tag sonarqube:latest harbor.ctrl.qq.com/library/sonarqube:latest[root@test03]# docker push harbor.ctrl.qq.com/library/sona

2022-04-19 20:17:45 770

原创 pytest学习总结

pytest需要学习的内容包含以下:1、pytest入门2、pytest高阶用法fixture3、pytest高阶用法之处理不能成功的测试用例4、pytest高阶用法之函数数据参数化5、pytest高阶用法之PDB和traceback6、pytest和allure、jenkins集成目前自己对pytest的掌握情况:1、pytest框中:①测试用例编写规则:测试文件需要以test_开头,方法以test_开头 类以Test_开头②用例执行:可以通过@pytest.mark来标记类和方

2022-04-09 13:42:52 196

转载 如何使用命令行运行框架为testng的自动化测试项目

java -jar 运行testng自动化测试项目下面是testng.xml文件<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"><suite name="All Test Suite"> <test name="Test"> <classes> &l

2022-04-06 14:04:04 466

原创 初探testng框架学习总结1~持续更新

testng是Java的测试框架,就跟pytest是python代码写的测试框架;不管是testng还是pytest,其实思想都是一样的。就是为了能更好地编写测试脚本,更规范地开发测试脚本。所以它的框架是固定的。那么testng也就有它自己约定俗成的一套规范,需要按照这个规范来编写自动化测试脚本。以下的东西比较零散,总结的主要目的是能够加深自己的理解。边用边学习~ps:表示新工作python直接给强制转java,欲哭无泪。。。。。1、@Test是testng的注解,只要被标记了@Test,则会自动当

2022-04-01 10:11:15 201

原创 Jmeter做性能测试总结(持续更新~)

一、线程组配置中各个参数的含义①启动延迟:若一个测试计划下有多个线程组,比如上面的1并发、75并发、150并发等,启动的时候,如果想在线程组之间设置执行间隔,可以通过启动延迟这个参数来设置,比如1并发线程组执行完成之后,多久执行75并发。这个值由75并发的启动延迟来决定,如果设置为300秒,那么就是5分钟之后再执行75并发;②持续时间:就是当前线程组的HTTP请求执行的持续时间。如果并发数为:1,那么5分钟就是一直执行?③ramp-Up时间:二、json取样器的使用参数含义:①Names .

2022-01-27 17:20:37 1196

原创 创建一个镜像为nginx服务的deployment

首先,deployment是k8s的controllermanager的一种,就是用来保证pod的副本数以及升级和回滚等。deployment可以通过yaml文件进行声明,在文件中对pod的参数进行声明,完成之后,直接通过一条命令就能够创建出deployment以及对应的rs 和 pod。下面来做详细的介绍,首先是如何来声明deployment,都有哪些参数需要预先配置。一、配置镜像为nginx的deployment的yaml文件一般deployment都有固定的模板格式:...

2022-01-05 19:41:27 2142 1

原创 win11docker desktop开启k8s过程中踩过的坑。。。

win11上装完docker desktop之后,如何开启k8s?我在开启的过程中遇到的问题是,直接打开docker之后,点击setting-kubernetes,点击Enable kubernetes 之后,点击apply and restart之后,一直在starting,卡在了这里,原因是我的docker的镜像源还是默认的从dockerhub上下载的,这是个国外的镜像源仓库,比较慢。如果大家出现了上面的问题,不要慌,等待这个starting停止了之后,将Enable kubernetes取消勾选。

2022-01-04 18:13:51 2394

原创 windows环境下进入docker虚拟机的方式

今天在docker的简易应用栈搭建的过程中,遇到一个问题,就是查看一个容器的存储卷挂在本地,发现进不去,原因是:我的环境docker是装在win10上的一个虚拟机上,我直接在power shell的命令行下进入会报错:提示我没有这个路径,原因就是我当前不是在虚拟机中,报错如下:问题不是这个路径不存在,而是我当前没有在docker的虚拟机中。下面介绍如何进入docker安装的虚拟机。我的本地pc是windows11操作系统。如果mac os,可以百度搜索关键字:mac os如何进入虚拟机window

2022-01-02 15:25:48 3735 1

原创 windows11如何安装docker desktop

我们知道docker的安装一般我们是安装在linux系统上的,但是如果你的宿主机是windows,那么你还想装docker,那么就需要现在你的windows上装上虚拟机,虚拟机上装linux操作系统,然后在Linux操作系统上再去安装docker,这样比较麻烦。docker desktop的出现就可以解决上面那个问题,你只需要在windows上开启虚拟化功能,然后安装一下docker desktop就可以了。第一步、开始hype-v的虚拟化功能。打开Windows的设置–应用-更多windows功

2022-01-01 16:01:05 25367 15

原创 docker之dockerfile学习总结(持续更新~)

在介绍dockerfile之前,先来啰嗦两句,docker是啥?为什么有docker?docker架构是什么样的?1、docker是什么?docker是2012年出现的,它其实就是一套对于容器打包的完成解决方案,在docker出现之前,容器这个概念在五六十年代就被提出来了,那么什么是容器呢,...

2021-12-17 21:11:45 1018

原创 12月份接下来的学习计划~

需要学习的点(按照优先级排序)1、自动化测试框架pyterst2、k8s未覆盖的一些知识点需要继续学习3、docker 容器的系统学习一下4、持续集成(CI/CD)5、MQ中间件的学习目前自己的情况:1、自动化测试框架pyterst—》目前自己的水平就是了解,离会用,差距还蛮大的。2、k8s未覆盖的一些知识点需要继续学习----》框架基本懂,还有一些存储,认证授权这些没有学习到,这块的东西不多。3、docker 容器的系统学习一下----》这块也比较陌生,但是有k8s的基础,应该理解起

2021-12-08 20:26:20 493

原创 kubernetes中数据存储volume的学习总结

应用程序是跑在容器中的,那么必然会有数据的产生,有数据就离不开存储,那么容器的存储有哪些方式呢?能想到的就是:非持久化存储和持久化存储两类。因为pod在运行的过程中可能会被销毁,所以运行在他上面的容器产生的数据我们需要对它进行一个存储,根据需求是永久存储还是随着pod生命周期结束就回收了,需要根据具体的实际应用场景来确定,不是所有的数据都需要永久存储,所以k8s根据数据存储的时效划分了多种存储方式。简单存储:emptydir hostpath nfs高级存储:pv pvc配置存储:conf

2021-12-08 08:08:21 362

原创 Cookie、session、token的区别

都是为了解决http无状态得这个缺点而出现的,都是服务端返回的,用来鉴权的。cookie是保存在客户端的,不安全。有被非法用户截取的风险。cookie是保存在浏览器的缓存中的,过期时间是服务器端来确定的,只要浏览器关了,就会失效。也可以本地持久化保存。比如客户端发一个请求给服务器端,服务器端会在响应头的setcookie字段中返回cookie,个数由编程人员确定,没有限制,包括cookie的名字,value,域,路径,过期时间。而session呢,是保存在服务器端的,通过cookie来传递的。比如客户

2021-12-05 23:32:09 3013

原创 http和https的区别

http是基于tcp连接的无状态的超文本传输协议,无状态就是没有记忆功能,也就是客户端上一次的请求,服务器无法保留,如果要获得,还需要重新获得一次。有很多实际的场景需要知道客户端上一次的请求信息。所以为了解决这个无状态的问题,出现了cookie。http的版本:http1.0 http1.2 http2.0区别:1.0是一次请求结束就断开,这种效率太低,就相当于每次我一个请求都要消耗一次tcp连接和断开的时间,中间才是一次http请求,那么为了解决这个问题,就出现了http1.1的版本。1.1可

2021-12-04 21:26:57 182

原创 中间件:MQ学习总结(持续更新)

MQ叫消息队列:那么什么是消息队列?任何一门技术的出现一定是为了解决某个问题的。先抛出问题吧。在互联网技术发展的初期,业务的体量很小,那么在体量很小的时候,比如用户下单,直接代码从上至下同步执行完成,最后付款成功,假定整个过程花费50ms。而随着时间推移,业务开始丰富起来,比如在付款的时候加上优惠券,那么这个时候,再付款的中途还要去把优惠券减去,假设这个过程需要5ms,那么总用时就是55ms了,加入后面业务又增加了,付款还要以短信的形式通知用户付款成功,假设为5ms,那么就60ms,然后再加个什么付款

2021-12-04 18:35:52 1476

原创 k8s中ingress的学习总结

我们知道我们的应用程序部署在容器中之后,外部需要访问它,那么怎么来实现呢,就是通过一个叫service的服务提供的IP地址+端口号,如果集群外部的服务器想要访问呢,那就是IP(node节点的IP)+nodeport,但是这样会有问题,就是当我们的service很多的时候,那么节点的端口号就会被大量的占用,可能会影响其他应用程序,那么这个时候就出现了ingress。它就是为了解决上面的节点端口号不够的问题,它的实现原理是:通过ingress定义不同的service对应不同的域名,也就是域名和service进

2021-12-04 09:59:03 2156

原创 k8s架构中kube proxy组件的学习总结。

Kubernets,简称k8s,相信大家都不陌生了,它是专门为容器编排管理提供的一套解决方案。本质上就是一套集群环境。这个集群环境中,有两个角色,一个是master,一个是work,其中master充当着领导者的角色,work充当着干活的角色。大白话也就是,接到任务之后领导者负责任务管理指挥,work接受到任务之后,去执行,真正的去把工作落实。master角色中又进行了分工,根据任务的不同,细分为以下组件:API server、scheduler、etcd、controller manager。work

2021-12-04 07:30:02 618

原创 Python语言的优缺点

Python语言底层是用c语言写的,所以也叫做cpython,和java c++不同的是,它是动态解释性语言,运行时边解释边运行,而java和C++是动态性语言,他们在运行前就全部编译成二进制可执行文件,且进行了简单的语法检查,所以,如果有语法错误,编译都过不去。Python中变量的定义是不声明类型的,且一切变量均是对象,比如int类型其实也是一个类,而java它们定义的时候已经告诉编译器变量的类型。Python运行慢,为什么还要用它,因为容易上手,灵活简单,节省开发时间。且是开源的,跨平台,可移植等

2021-11-27 17:09:00 846

原创 网络基础知识总结

1、TCP/IP协议基础:七层协议(OSI):①物理层:通过传输介质发送和接收二进制比特流。②数据链路层:实现二层转发,主要对应的是转发表,设备:交换机③网络层:实现三层转发,主要对应的是路由表,对应的协议:ARP协议、ip协议、icmp协议、路由协议(RIP协议、OSPF、Isis、bgp协议等)④传输层:对应的协议是tcp、udp协议⑤会话层⑥表示层⑦应用层而通常我们是将⑤⑥⑦放在一起,简化为应用层,①和②放一起,简化为网络接口层,那么就剩下四层了,就是我们所说的TCP/IP协议栈,其

2021-11-26 19:59:41 2298

原创 软件测试基础知识总结

软件测试其实是对于测试来说一个很大的定义,根据当前岗位的情况细分为:手动测试、自动化测试、性能测试、测试开发等。①手动测试:就是我们常说的点点点,只要熟悉需求,了解业务,就可以进行测试了,这种一般是刚进入测试行业所从事的工作。手工测试中有主要有系统测试、接口测试,根据当前岗位的要求来确定。②自动化测试:也就是使用一些脚本来让计算机帮我们来完成测试,但是这些基本需要我们自己开发,一般都是基于一些框架来开发的,目前有Python语言的pytest、unitEST框架等,以及Java的testng框架。或者是

2021-11-25 21:47:21 269

原创 python的元类type学习总结

type是元类,也就是python中所有的类其实本质上都是type这个类的实例化后的对象。type的作用是干什么呢?1、我们直接type()来判断一个对象的类型。type不是一个类吗?为什么可以直接去调用呢?因为type类其实也是一个对象,是自己的类的对象,而type类中实现了__cal__()这个方法,我们知道只要实现了__cal__()这个方法的类,那么该类实例化的对象就可以直接被调用,也就是可调用对象,即callable。下面给个例子:print(type(1))print(type('ab

2021-11-21 13:22:44 1086

原创 python之logging模块学习总结(持续更新)

logging模块可以用来在代码执行的过程中进行日志的输出,便于后期的问题定位以及查看程序每一步执行的结果,很有必要,一个好的程序员一定要有一个好的日志打印的习惯。。。下面就来重点介绍下python自带的日志模块logging,学会怎么使用就行了,因为是封装好的。首先需要import logging。1、日志模块常用的几个方法:logging.debug('debug信息....')logging.info('info信息....')logging.warning('warnning信息...'

2021-11-21 12:31:13 143 1

原创 数据结构与算法之反转链表的两种解法总结(Python实现)

1、迭代方法实现链表的反转思想:主要是需要使用到多个指针进行定位。pre、cur、tmp第一步:将pre = None,cur=head,tmp=cur.next第二步:将cur.next=pre,pre=cur,cur=tmp,tmp=tmp.next重复上面的第二步操作,直到cur=None,返回preclass Node(object): def __init__(self,val): self.val = val self.next = None

2021-11-19 13:27:17 410

原创 python中比较杂的一些常用的知识点:去除转义、encode、decode等(持续更新~)

1、去除转义使用r比如:\n表示换行,如果直接在代码中直接使用的话,会被认为是换行,那么如果不想让Python解释成换行,让其保留\n原义,那么可以在前面加上rs1 = '123456\n's2 = r'123456\n'print(s1)print(s2)print('********')运行结果:123456123456\n********...

2021-11-18 12:24:18 1536

原创 python中set类的用法

set函数是Python的内置函数,就像dict一样,集合也是Python的一种数据类型。通过set()可以初始化一个集合对象,集合的特征是无序的不重复的元素组成。对于集合中的元素可以进行一些操作:交集、差集、并集等操作。举个例子:初始化一个集合对象:A = set('qwerqwer12341234')B = set('qwer98765')print(A)print(B)C = set()C.add('ooo')print(C)C.update('ppperer')print(C

2021-11-17 00:08:06 4281

原创 11月~接下来半个月的学习计划

制定计划之前,先总结下上半个月计划的完成情况:附上上次的计划:1、自动化脚本写起来,这周末就开始,真正的开始让自己开始入门。----》已经开始在尝试写脚本了,目前情况是:刚熟悉代码的整个结构和如何调通。昨晚请教了组内的同事,说我进度有点慢,方法也不太对,应该尝试自己去写接口实现,而不是去直接调用别人的写好的方法。2、学习数据结构和算法,还是那个视频。接着看,每天一道算法题。—》算法基础全部学完,基本都进行了总结,每天基本达到完成一道算法题(leetcode上剑指offer的题)3、每天一篇csdn文

2021-11-16 18:36:09 414

docker+Jenkins+pytest+allure自动化测试环境

本文主要介绍了如何在一台服务器上部署一套完整的docker+Jenkins+pytest+allure自动化测试环境,包括docker,Jenkins,python,pip,allure的安装,及其依赖和pytest插件的安装。最后通过案例介绍了如何通过页面访问Jenkins,完成流水线的配置,并触发流水线执行自动化测试脚本,完成自动化测试,借助allure展示测试报告。

2024-06-27

空空如也

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

TA关注的人

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