自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Chrisliuluo的博客

技术总结、工作记录

  • 博客(63)
  • 资源 (3)
  • 收藏
  • 关注

原创 Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘learn_mysq

报错原因:mysql的5.7以上版本都默认sql_mode=only_full_group_by,这个规则实际是为了提升查询的性能,因此规定我们在查询的时候只能准确的查找要查的唯一数据,不支持group by的分组条件与select的条件不一致。只能写 select id from tableA group id having id='*6*';这种语句,可以在having中控制模糊匹配,但是查询条件和分组条件必须一致。永久性解决该问题,只需要修改mysql的配置文件,my.cnf文件,添加一行配置。

2024-03-27 20:42:30 326

原创 linux忘记mysql的root密码,强制修改

quit退出mysql,在重复上述步骤1、2,将skip-grant-tables注释掉或者删掉都可以,退出并保存。3、使用命令:service mysqld restart 重启mysql服务.4、使用命令:mysql -u root -p,不用输入密码,登录mysql。1、登录linux后编辑mysql的配置文件:vi /etc/my.cnf。编辑完成后,按Esc键,":wq"退出编辑并保存修改内容。重启mysql服务,再次登录就可以用新密码登录了。2、添加如下代码,表示跳过授权表登录mysql。

2024-03-26 18:11:14 292

原创 pycharm使用小技巧——保存时自动调整代码格式

打开File→Setting,在搜索框搜索action,选择Tools下的Action on Save ,勾选Reform code并保存。在保存代码时,会自动将代码调整到最优美格式并保存。怎样做到代码保存的同时调整代码的格式为符合PEP8形式,不报警告信息。

2024-03-26 17:03:26 221

原创 抓包工具Fiddler使用简述

(在 Fiddler的 UI页面的 会话列表栏中 添加一个显示列,列名为ServerIP,列宽为120,取值为目标主机IP地址X-HostIP)设置之后打开浏览器请求一个页面,此时请求被截断,找到发送数据的那个报文,修改请求数据,修改完成后点击GO发送即可。方法二:在命令行截断,输入www.baidu.com就会在包含www.baidu.com的请求处截断。中断请求是为了能够在中断时对请求的报文进行指定修改,将修改后的报文发送至目的地,查看是否符合期望值。HTTP:打开浏览器,点击左下角。

2024-01-11 14:50:43 437

原创 接口测试基础03——使用Postman工具

(4)百度搜索:填写请求方法、URL,根据百度URL的特点可以知道,搜索关键字通常放在URL查询参数wd的值中,所以将全局变量city的值传递给wd,作为查询参数传递给百度查询接口。如果想要把city设置成环境变量,在Tests将它设置成environment变量a后,后续使用环境变量时使用的是环境变量a,需要注意的是这个环境变量,只在当前环境有效,切换环境后就失效了。-e 环境变量文件名:导出的环境变量文件(该文件也是Postman批量执行的引入外部文件),同样,不在命令行的执行目录时,需要加文件路径。

2023-12-19 16:52:01 1065

原创 数据库基础知识

逻辑删除:某些数据因为过于重要,不能轻易删除,或者只是需要临时隐藏,后续还会使用,这种情况直接删除数据就不合适了。在数据表中添加一个字段,例如叫isDelete,默认为0,表示未删除,当需要隐藏数据或临时删除时,将该字段置为1,表示已删除。左连接保留左侧表(主表)的全部数据行,右侧表(从表)向左侧表一个个匹配,有对应数据就显示,没有对应数据就显示为null。删除数据表:删除表中全部数据,同时删除表的结构。(4)连接相关:当两个表中的数据存在关联关系时,将两个表的信息通过有联系的字段结合在一起,方便查询。

2023-12-14 20:13:54 1073

原创 Centos7安装MySQL

我是刚安装完Centos就安装了mysql,有的时候是使用过Centos安装mysql,那我们就要先检查一下是否已有mysql或者mariadb。mariadb是有原mysql开发者开发的一款数据库,与mysql可以说师出同门,所以在安装文件和安装步骤上几乎相同,所以我们也要注意。如果存在,则会返回对应的进程信息,如果不存在则只会返回命令的执行结果,如下,我没有安装mariadb但是已经安装好了mysql。查看是否存在/etc/my.cnf文件,存在则更名,加一个.bak后缀备份,不存在则跳过此步骤。

2023-12-06 01:27:45 933

原创 Linux基础命令(测试相关)

在我们自己的电脑上,也有一个127.0.0.1的地址,指代的是我们的电脑本机,所以如果使用这个地址连接虚拟机,地址是冲突的,根本识别不了。搜索文本文件内容:grep keyword filename ,-v显示不匹配的所有行,-n显示匹配行及行号,-i忽略大小写。-------------------------其他------------------------------------------------------------文件操作---------------------------

2023-12-05 15:38:21 858

原创 测试基础知识

不同浏览器、不同硬件、不同操作系统,对第三方有没有影响。bug修复且回归通过后,项目交付,根据验收测试计划完成验收测试,包括内测和公测。当开发进入概要设计阶段时,由开发输出的API文档设计接口测试(集成测试)计划。开发完成代码集成,开始实施,根据系统测试计划,完成系统测试。可移植性:可以在不同硬件、不同系统、不同开发环境下运行。在开发进行需求分析时,测试参会,输出系统测试计划。开发完成模块代码后,根据接口测试计划,完成接口测试。6-10位自然数:6-10位、自然数。禅道:产品管理、项目管理、质量管理。

2023-12-03 20:44:38 878

原创 WebUI自动化学习(Selenium+Python+Pytest框架)005

与Unittest不同,不需要装饰器,也不需要指定类继承,不需要将类名或函数名固定以Test开头。类直接定义,继承基类object类即可。命名不需要特定以test开头,但是要注意类名开头统一,方便执行(不需要必须以Test开头,但是开头也要一致)特殊函数:①函数级别:开始函数 setup(self)、结束函数 teardown(self)②类级别:开始函数setup_class(self)、结束函数 teardown_class(self),不需要装饰器指定为类方法。

2023-12-01 21:40:26 1010

原创 WebUI自动化学习(Selenium+Python+Pytest框架)004

接下来,WebUI基础知识最后一篇。

2023-11-29 10:30:33 1246

原创 WebUI自动化学习(Selenium+Python+Pytest框架)003

在成功定位到元素之后,我们需要对元素进行一些操作动作。

2023-11-28 11:56:40 1317

原创 WebUI自动化学习(Selenium+Python+Pytest框架)002

新建一个python代码文件file-new-python file 会自动创建一个.py后缀的代码文件注意:命名规则,包含字母、数字、下划线,不能以数字开头,不能跟python关键字或包名重复。********************华丽分割线******************************************************

2023-11-27 16:38:12 1431

原创 强制删除文件

将需要强制删除的文件拖拽到这个delete.bat文件上,显示使用delete.bat打开时(win11会显示,其他不知道会不会,总之要删除的文件拖到这个文件上)文件就会被强制删除.强制删除文件,新建一个文本文件,将以上代码复制到文档中,保存,将文档重命名为delete.bat。如果弹窗提示修改后缀名可能导致文件不可用,也点击确认修改文件名称.

2023-11-26 22:13:33 494

原创 Pycharm Available Packages显示Noting to show

4.就是我的问题,我的环境中很久之前安装过python但是卸载了,但是没有卸载干净,存在两个python.exe,使用where python可以找到两个路径。因为在以上操作中,我们指定了明确的路径给解释器,所以之后无论是新建项目还是旧项目,再选择下载依赖包时就有了一个明确的路径,就不会再有加载失败的情况啦.在下方Interpreter 下拉框里,找到你的python安装目录,选择python解释器文件python.exe,点击OK添加.当然,以防万一,把造成冲突的卸载遗留文件强制清除最好啦.

2023-11-26 21:54:15 1103

原创 WebUI自动化学习(Selenium+Python+Pytest框架)001

(1)常见主流浏览器:Firefox、Chrome、Edge、IE(已经不用了)、Safari(Mac OS专用)、欧朋。通常安装一个Chrome一个Firefox就足够了,项目有特殊需求的也可以用其他的.(2)下载浏览器品牌\版本都对应的驱动,chrome需要版本严格对应,火狐没有要求严格对应,只要浏览器和驱动都是最新版就可以.依赖手工测试结果、无法解决布局类缺陷的发现、逻辑过于复杂的业务或涉及第三方接口的内容,自动化不适合。(3)找到Python的安装目录:cmd命令行 where python。

2023-11-26 17:51:43 1584 2

原创 selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate elemen

以上代码报错selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate elemen。原因分析:点击新闻时打开了新的页面,想要在新的页面去右键,但是没有进行页面切换,所以元素定位失败.

2023-11-23 19:27:22 2167

原创 Windows小工具_剪切板

这样我们再使用剪切功能之后,剪切的内容就会全部保存在剪切板中,当使用粘贴功能时,按住windows徽标键+C,就可以选择需要的内容粘贴啦,不用再反复来回切换啦.在任意输入位置按住Windows徽标键+C,可以看到全部历史剪切记录,在此处还可以对不需要的历史记录进行清除管理.Windows11自带剪切板功能,可以保存剪切的全部历史,避免了多次重复打开文件剪切复制的烦恼.如果"开始"里面的"已固定栏"找不到设置,在此处点击"所有应用"3.找到"系统"_"剪切板"打开。4.打开"剪切板历史记录"

2023-11-23 09:49:12 129

原创 Python基础学习__测试报告

stream = sys.stdout,必填,测试报告的文件对象(open一个文件就可以得到一个文件对象)即测试报告名称,注意,必须使用wb(二进制写入)打开。# runner = HTMLTestRunner(f,2,'测试报告名称','Python3.11') # 运行对象。# 即将报告模板放在代码目录下,导包,添加用例,使用第三方的Runner代替Python自带的TextTestRunner来执行用例实例。# title = None ,可选,是测试报告的标题。

2023-11-21 19:03:03 197

原创 Python基础学习019--跳过

【代码】Python基础学习019--跳过。

2023-11-21 19:02:06 186

原创 Python基础学习018____参数化

【代码】Python基础学习018____参数化。

2023-11-09 08:19:07 42

原创 Python基础学习017__断言

【代码】Python基础学习017__断言。

2023-11-08 19:31:44 53

原创 Python基础学习016__UnitTest

Testcase:测试用例:这个测试用例是UnitTest的组成部分,不是手工和自动化中所说的用例(Test Case)# Fixture:测试夹具:书写在TestCase中的,是一种代码结构,在每个方法执行前后都会执行的内容.# 为什么使用:能够组织多个用例去执行.提供了丰富的断言方法,能够生成测试报告。# TestSuite:测试套件,用来管理,组装(打包)多个TestCase。# TestRunner:测试执行:用来执行TestSuite。# 可以将用例的前置后置条件放在这里。

2023-11-07 17:21:32 131

原创 Python Selenium报错:ValueError: Timeout value connect was <object object at 0x000001CCD4EC4540>, but i

报错:ValueError: Timeout value connect was <object object at 0x000001CCD4EC4540>, but it must be an int, float or None.之后又安装了Selenium3.141.0版本,结果巨坑来袭,写了简单代码验证安装效果,结果报错。之前学习Python过程中做过接口测试,有安装urllib3,版本是2.0.7。原因分析:Selenium版本与urllib版本冲突,或更换Selenium降级版本。

2023-11-06 19:40:24 1351

原创 Python基础学习015——模块

【代码】Python基础学习015——模块。

2023-11-06 18:41:58 38

原创 Python基础学习014——异常

【代码】Python基础学习014——异常。

2023-11-06 18:40:19 34

原创 Python基础学习013——文件操作

【代码】Python基础学习013——文件操作。

2023-11-05 10:17:58 30

原创 Python基础学习012——对象、属性、方法

【代码】Python基础学习012——对象、属性、方法。

2023-11-05 10:16:22 52

原创 Python基础学习011——继承、多态与重写

【代码】Python基础学习011——继承、多态与重写。

2023-11-03 22:13:04 110

原创 Python基础学习010——公有与私有

【代码】Python基础学习010——公有与私有。

2023-11-03 22:12:05 346

原创 Python基础学习009——类的封装

【代码】Python基础学习009——类的封装。

2023-11-03 22:11:08 202

原创 Python基础学习008-函数2

【代码】Python基础008-函数2。

2023-10-30 08:32:01 36

原创 Python基础学习007-函数基础01

【代码】Python基础007-函数基础01。

2023-10-29 09:57:23 39

原创 Python基础学习006--字典

【代码】Python基础学习--字典。

2023-10-28 20:51:09 33

原创 python基础学习005_列表与元组

【代码】python学习005_列表与元组。

2023-10-27 09:53:13 39

原创 Python基础学习004——for循环与字符串

print(num, num1, str2[num1-1], str3[len(str3)-1]) # 输出两个字符串的长度及str2和str3的最后一个字符。# 字符串的查找:str.find(sub_str,start,end)从start(默认为0)开始到end(默认为len(str)-1结束,在字符串中是否存在sub_str。# 字符串[start:end:step]:start开始位置下标(默认为0),end结束位置下标,step步长(默认为1)即隔step-1个取一个。

2023-10-26 23:02:12 782

原创 Python基础学习003——while循环

【代码】Python基础学习003——while循环。

2023-10-25 15:43:50 45

原创 Python基础学习002——if语句

【代码】Python基础学习002——if语句。

2023-10-24 13:11:31 36

原创 Python基础学习001——基础语法

4.运算符:算数运算符,逻辑运算符,赋值运算符,转义符\n \t.1.变量的定义与使用,变量类型函数type()

2023-10-23 16:26:11 38

原创 python:This dictionary creation could be rewritten as a dictionary literal

在定义后使用一个print将字典打印 , 完成字典的使用动作 , (或者任意添加一行代码也可以)再进行修改 . 系统就会判断为 , 定义和修改因为中间写的这一行代码必须分开写 , 这样就不会再警告。原因是 : 第一行创建字典,中间没有经过任何使用 , 第二行直接对字典进行修改 , 系统认为这两行完全可以通过一行(即定义这一行)写完 , 不需要写成两行 . 判定为冗余,此报警意思为"这个字典的创建可以被重写的更简单"虽然不影响代码运行, 但是有报警信息。

2023-10-22 18:28:35 556

Web项目实战-在线计算器

Web定位:Selenium 脚本语言:python 测试执行框架:pytest 封装模式:POM 项目url:https://zaixianjisuanqi.bmcx.com/

2023-12-01

Python学习代码笔记

所有Python基础学习过程中的代码,全部为调试过可执行状态

2023-11-21

简单注册界面

在APP上实现一个简单的注册界面

2017-06-17

微博手机APP

微博APP源代码

2017-06-17

天气预报APP

中文版天气预报APP简单实现

2017-06-17

空空如也

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

TA关注的人

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