自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

闫振兴的博客

只做原创,告别转载。

  • 博客(185)
  • 资源 (1)
  • 收藏
  • 关注

原创 models.APIInfo doesn‘t declare an explicit app_label and isn‘t in an application in INSTALLED_APPS

Model class apps.practice.models.APIInfo doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS

2022-12-03 16:31:09 449 1

原创 测试四年工作心得:如何追求卓越

目录打破习惯的围城每年我都会写几篇测试感悟的文章,或长篇大论活寥寥数语,不为别的,只为了能够记录一下自己的成长,也希望能够帮助到测试相关工作的同学们。1.打破习惯的围城今年是我参加工作的第四年,四年里认识了很多有趣人,接触了很多有趣事,负责了很多有趣项目,有金融,有财务,有数据仓库还有医疗。负责了那么多的项目,提了一堆堆的bug。但是随着工作年限和接触固定类型项目的增多,我发现思维会被固话,会被封闭,会陷入惯性的围城,如何去打破这座围城?为了打破思维的惯性,我尝试...

2022-05-17 21:10:28 636 3

原创 Django和Flask反向解析:Django reverse() Flask url_for()

目录Django:reverse()Flask:url_for()Django:reverse()在django中,虽然view中的视图方法名固定之后一般不会修改,但是url路径变动还是比较常见的,为了减小每次修改的影响范围,django提供了reverse()方法来解决这种问题。每次只需要修改urls文件中的路径就可以,不会对模板和view视图中的方法进行修改,大大较少了修改的影响范围。如图:在urls文件中有很多的路径配置,给当前app和每一个视图方法起一个别名视

2022-05-17 20:33:29 698

原创 python算法:分而治之思想(我喜欢叫它:逐个击破思想)

分而治之:将一个打的问题分解成若干个子问题(子问题可以继续分解),将每个子问题都解决之后整个问题就会解决。分而治之常用递归一起使用。步骤:1.分解问题2.求解子问题3.将子问题结果合并下面将举几个例子来说明分而治之思想:1.找到列表中第k小的数字:解决这个问题的方法有很多,一般会想到排序:从小到大排序列表,然后取出列表中第k个元素,那么这个列表的第k个元素就是第k小的数字;或者从大到小排序,去除列表倒数第k个元素,那么该元素就是这个列表的第k小的元素。但是,如果要对这个问题采取分而治

2021-08-22 21:46:43 618

原创 python获取json中的元素:jsonpath和JMESPath

如何快速获取json中的数据,也可以换一句话,如何简单快速的获取json文件中的数据,是我们在接口自动化中常考虑的内容,原因在于某些接口响应的数据是不同的,例如:一个查询接口会根据传参的不同,响应不同从值。有时候给出的json中含有data参数,有时候没有。当我们用固定的json位置取值时是不适用的,那么jsonpath和JMESPath就是一个不错的选择。 jsonpath:利用匹配的方式获取json文件中的数据。(我所掌握的方式,个人比较喜欢)import jso...

2021-08-15 18:38:38 1998

原创 python:对ini配置文件的操作

cfg.ini 文件:[service]host= localhost[mysql]username=rootpassword=root# author:闫振兴# contact: [email protected]# datetime:2020/3/5 15:26# software: PyCharm"""文件说明:"""#encoding:utf-8import configparsercfg=configparser.ConfigParser()cfg.re.

2021-03-29 18:26:21 186

原创 paramiko远程管理liunx服务器

import configimport paramikoimport timeclass SSH_Tese_Tool(): """ 实例化类时自动调用该方法,链接服务器 """ def __init__(self): self.hostname = config.fuwuqi["userhost"] self.username = config.fuwuqi["username"] self.password = .

2021-03-24 17:27:26 235 1

原创 利用Locust进行压力测试

闲话少说,先上一段代码from locust import HttpUser, TaskSet, task, betweenclass TestIndex(TaskSet): @task def getIndex(self): with self.client.get("/*********", catch_response=True) as resp: response = resp.json() # print.

2021-03-21 15:24:10 264

原创 python小技巧:将方法放入类库中

在写自动化脚本的时候,常常用到一些制造数据的函数,每次引用的时候需要将文件加到项目中,比较麻烦,推荐一种一劳永逸的方法:将自己的类方法放入类库中第一步:在python的\Lib\site-packages目录中新建一个文件夹(命名随意):例如:第二步:将自己写好的python文件放入到该文件夹下:第三步:在项目中可以引用类中的方法了,但是需要注意一点:如果在其他电脑或者虚拟机上执行的时候,需要将这些文件配置到其他电脑或虚拟机的python环境中:...

2020-12-24 16:12:36 504 1

原创 JS报错:Cannot use import statement outside a module

解决办法:增加:<script type="module">中增加type的类型是module; demo1.jsexport var name = "yzxing";export let age = "26";export function person(name, age) { this.name = name; this.age = age; return `${this.name} ++++ ${this.age}`}html:&l

2020-12-13 14:53:25 29959

原创 H5实现复制文本到剪切板

复制功能的实现:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script></head><body><d

2020-12-03 16:14:43 1110 2

原创 一篇学会shell

一:在liunx中创建一个可执行的shell脚本的步骤::1) 使用 vim 建立一个demo1.sh 文件2) 输入 shell 程序3) 使用 wq 命令保存并退出当前所编辑的 shell 文件4) 给 demo1.sh 赋予一个可执行的权限5) 运行 shell 脚本二:创建第一个可执行的shell脚本:代码:#! /bin/bashecho `pwd`执行效果:shell脚本的输出:代码:#! /bin/bashecho `pwd`

2020-11-27 21:27:30 332

原创 python+JavaScript+AJAX+flask开发测试工具并部署到liunx服务器中。

访问地址:http://106.14.227.119/声明:自动生成的测试数据仅供测试使用,不可用于其他任何用户,尤其是非法用途。1.在liunx上部署python环境:可参考我的这一片博客。https://yzxing.blog.csdn.net/article/details/1101421652.安装所需依赖:python -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple/.

2020-11-25 20:40:34 263 2

原创 liunx安装python3.6.1

1.上传下载好的安装包到liunx服务器上2.解压tar -xvf Python-3.6.1.tgz3.安装依赖,出现截图中的Comlete时说明安装成功。yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make4.进入python解压路径下,执行以下命令,出现Sucessfully时候说明安装成功。.

2020-11-25 20:10:07 214

原创 测试开发:pyside2+python开发的自动生成测试数据小工具

1

2020-11-13 23:08:19 1103

原创 2天,利用下班后的4小时开发一个测试工具

源码和安装包:git路径:https://github.com/yzxwp/test_Autotool.git安装包下载:链接:https://pan.baidu.com/s/1ne5MWT84_c_BYhp-QmlA7w 提取码:bxuy开发原因:现在我主要从事汽车金融项目的测试工作,身边的同事告诉我,测试用的数据好难造,例如身份证号码,统一社会征信码,车辆车架号等数据校验复杂,直接取数据库中的数据牵扯到可以的信息,脱敏后数据可能是用不了,网上的在线生成工具因网络权限问题无法获得,还...

2020-11-05 18:08:34 1928 6

原创 KETTLE:如何提高传输速度

先看结果:7分钟500万数据。优化步骤 :1.增加参数useServerPrepStmts=falserewriteBatchedStatements=trueuseCompression=true2.第二步,增加写入量。默认的100太小,改成合适的写入量。

2020-10-13 11:32:59 1865

原创 KETTLE:输入数据预览时报错

产生原因:字段格式不符解决办法:采用正确的格式将字段更新成正确的之后。

2020-10-12 14:58:48 3489

原创 robotframework:SyntaxError: unexpected EOF while parsing

解决办法:参数加单引号 run keyword if '${text1}'=='${text}' log 版本号正确 ... ELSE log 版本号不正确

2020-10-07 18:07:53 465

原创 appium桌面工具一篇轻松搞定

appium桌面工具的认识和使用调试注意事项:先插上数据线,链接到电脑上,第一次打开开发者选项, 打开调试以后,关闭页面,【USB调试】会自动关闭,这时候需要手动再打开 一次。使用adb命令,查看手机:adb devices参数platformVersion的来源:设置-关于手机查看当前手机打开的app,包括包名和页面 adb shell "dumpsys window | grep mCu...

2020-10-05 09:25:18 2071 4

原创 解决svn图标消失的方法

今天上午重装了svn,发现原有路径的svn图标消失。查询了很多方法,我找到了一种最靠谱的方法,并把它整理出来。第一步:regedit,打开注册表第二步:输入路径:计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers第三步:重命名,在前面加一个空格第四步:打开任务管理器。关闭explorer.exe服务,之后再重启。(点击

2020-08-28 15:21:30 648

原创 flask:做mock的不二选

当我们的系统需要请求第三方接口的时候,可能会遇到这样的问题,测试环境数据不够或者没有数据,需要请求第三方的接口来获得数据,但是数据量非常大,需要验证一下获取数据接口的性能,准确性等,mock就是不二的选择,但是使用工具做mock的话又满足不了复杂逻辑和数据量,那么展示你技能的时候到了,自己写一个mock服务吧。下面是我为微信公众号写的同步所有关注用户的mock服务,所有的数据都是用for循环生成的。# encoding:utf-8from flask import Flask, request

2020-08-13 21:48:13 2640

原创 三年我从初级测试工程师到高级测试工程师的前进之路。

首先要感谢那些嘲讽我代码写的烂的人,五年开发经验嘲笑刚出校门踏入社会的我,让我放弃了开发工作,走向测试的康庄大道。此外,曾经的开发经验对我测试工作的帮助是无与伦比的。数据库,编程语言,liunx,环境部署维护,程序打包,参与代码走查,专项测试,性能分析等一系列让很多测试人员头疼的事情并没有发生在我的身上。一学就会,一点就通,举一反三我为什么要选择测试工作? 起初,与很多人一样,我也很迷茫,我是不是一定要从事与自己专业相匹配的工作。校招的时候自我认识不足,把自己的放到很高...

2020-08-09 17:29:02 3335 2

原创 python邮件发送:smtplib.SMTPDataError: (554, b‘DT:SPM 163 smtp7,

报错:smtplib.SMTPDataError: (554, b'DT:SPM 163 smtp7,C8CowAAHBSnHCxxfsEg_BA--.12055S2 1595673543,please see http://mail.163.com/help/help_spam_16.htm?ip=27.19.234.110&hostid=smtp7&time=1595673543')解决办法:将自己的邮箱添加到收件人。退信代码说明:  •421 HL:REP 该IP

2020-07-25 18:43:47 7011 1

原创 163邮箱报错535:smtplib.SMTPAuthenticationError: (535, b‘Error: authentication failed‘)

邮箱报错535:没有使用授权码。原来到时候163邮箱不用使用授权码就可以,但是现在跟qq邮箱一样必须使用授权码了。解决办法:使用授权码登陆。

2020-07-25 11:40:12 1635

原创 国内Centos镜像网站

阿里云:http://mirrors.aliyun.com/centos/北京电子电信工程:http://mirrors.pubyun.com/centos/盛大云 :http://mirrors.hust.edu.cn/centos/华中科技:http://mirror.neu.edu.cn/centos/网易:http://mirrors.163.com/centos/腾讯:https://mirrors.cloud.tencent.com/...

2020-07-20 14:19:06 385

原创 unable to find utility “simctl“, not a developer tool or in PATH

ios真机自动化的时候,搭建环境遇到这个问题。原因是因为xcode没有指定版本。解决办法:选择xcode的版本。

2020-07-19 19:50:28 1094

原创 curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused

IOS搭建自动化环境需要安装brew,使用ruby命令安装时遇到无法连接的问题:解决办法:修改hosts文件,将下面的ip地址放到host文件中。记得sudo vi /etc/hosts 。否则会报错。199.232.28.133 raw.githubusercontent.com...

2020-07-17 22:55:58 331

原创 error: device unauthorized. This adb server‘s $ADB_VENDOR_KEYS is not set Try ‘adb kill-server‘

报错:error: device unauthorized.This adb server's $ADB_VENDOR_KEYS is not setTry 'adb kill-server' if that seems wrong.Otherwise check for a confirmation dialog on your device.解决办法:拔掉数据线,重新连接;

2020-07-10 19:34:13 2251

原创 个人常用的查看磁盘空间命令

最近发现测试环境的磁盘空间总是不够用,于是彻查了一下测试环境的磁盘占用空间,把没有的都删除掉,焕然一新。但是没过多久又快满了,想了一个解决办法:挂载:https://blog.csdn.net/pingsha_luoyan/article/details/106427339 在排查问题和解决问题的时候,我用了一下几个命令:free -m :查看内存du -h :查看当前文件夹下存储文件的大小df -h:查看硬盘空间此外:du -h 命令使用的人很少,但是每次解压...

2020-07-04 14:51:11 1360

原创 Jmeter:抓取手机APP的接口

与charles抓包工具相同,jmeter抓取app的接口也需要用到代理:大前提:jmeter需要和手机连接到同一网络第一步:测试计划上右键-添加-非测试原件-http代理服务器第二步:对代理服务器进行配置(配置前最好在测试计划下新建一个线程组,目的是用来存储抓取到的ap接口),配置完成后对手机进行代理设置,手机设置成功后点击启动,此时就可以抓取app的接口了结果:...

2020-07-04 14:22:14 1874 4

原创 Appium报错:[10061] 由于目标计算机积极拒绝,无法连接。

同一个坑跌倒了好几次!错误原因:Appium没有打开!!!!!解决办法:打开Appium后执行。

2020-06-30 14:33:57 1865 3

原创 monkey的日志管理:三种方式

第一种:保存到手机adb shell monkey -v -v 10 > /sdcard/monkeylog.log趟坑日志:必须先执行adb shell ,否则报错;按照顺序执行则不会报错。第二种:保存到电脑adb shell monkey -v -v 10 > E:/monkeylog.log第三种:标准流和错误流分开保存:adb shell monkey -v -v 10 1>e:/monkey_sucess_log.log 2>e.

2020-06-26 23:00:00 1051

原创 如何解决monkey无法执行特定场景的问题:自定义脚本:以华为计算器为例。

闲话少说,先上源码:type = raw eventscount = 1speed = 1.0start data >>#打开app的包名,启动的ActivityLauncherActivity(com.android.calculator2,com.android.calculator2.Calculator)#休眠500msUserWait(500)#点击计算机按钮1Tap(105,989,1000)UserWait(500)#点击计算机按钮+号Tap(63

2020-06-26 22:11:37 1129

原创 liunx下安装mysql数据库:已给出所有命令,最简单的方法了。

今天再测试环境部署了mysql数据库,趟坑之后的总结步骤。1.将下载好的tar包上传到服务器中。2.解压:tar -xzvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz /usr/local/mysql3.首先看一下有没有建立mysql组和mysql用户。没有则增加 groupadd mysql useradd -g mysql mysql chown -R mysql:mysql /usr/local/mysql4.赋权:hmo

2020-06-23 14:40:21 319 4

原创 测试思维:正向思维和逆向思维

对于开发人员来说,他们在编程实现需求的时候大多数人都是从正向思维出发来实现需求,往往忽略了逆向思维或者考虑的不够全面,因此我们更需要从逆向思维出发来证明产品是正确的。 测试不仅仅需要正向思维来验证功能是正确的,产品是满足用户需求的,更需要逆向思维来进行帮助我们更早的发现问题。但是逆向思维并不是百里无一害的,使用逆向思维我们容易陷入深度测试,缺乏广度。例如:在测试系统时,个人感觉某一地方会出错,就一直逆向思维不停的深挖,而忽略了其他地方,容易导致测试缺乏广度。 ...

2020-06-17 17:59:52 2846

原创 Jmeter报错:only whitespace content allowed before start tag and not \ufffd

错误原因:b误原因:badboy录制脚本时,直接保存为.jmx格式解决办法:使用export导出。

2020-06-07 09:00:13 5236

原创 大话自动化测试:我眼中的自动化测试工程师,如何成功自动化测试工程师

自动化测试工程师是不是自动化工程师都是使用代码来实现自动化的?对于这一点我要说明一点,自动化工程师并不是这样的。自动化分为工具的自动化和代码的自动化。自动化测试有很多工具,例如postman,soapUI等等。并不是所有的都要用代码来实现自动化。首先,现在自动化测试工程师很大一部分。...

2020-06-05 15:18:27 1878 2

原创 解放双手之liunx的shell编程:(六)利用shell脚本一键启动服务

微服务需要启动的服务很多,当服务器关闭后需要重启,十几个服务逐个启动真的是很烦,浪费我宝贵的时间,因此我编写了一个可以一键启动服务的shell文件来方便启动服务。初级代码:#!/bin/bashcd /mpjava/server/ly.nfrzzl.core.biz/binpath=`pwd`if path='/mpjava/server/ly.nfrzzl.core.biz/bin';then echo '已经进入/mpjava/server/ly.nfrzzl.core.biz/bin

2020-06-05 11:17:48 774 5

原创 测试右移:是什么,为什么,怎么办。

测试右移常见于敏捷测试中,且敏捷测试模型必须进行测试的左移和右移。测试右移是什么: 一般都认为测试的周期是单元测试到验收测试,但是测试人员在验收测试结束之后,绝不意味着测试已经结束,软件系统是脆弱的,还需要测试人员跟踪测试,这个跟踪测试的过程就是测试右移。为什么测试: 1.有一些不可预测性的问题无法重现的,因此我们原本通过增强回归测试保障质量的策略不能够保证完全不会出问题。 2.要测试必须探索,事先定义的脚本不能完备覆盖所有的情况。 ...

2020-05-30 20:58:50 3036

自己用python+tkinter编写的测试工具

自动生成测试数据,减少数据自造的时间。 源码已经在git上:https://github.com/yzxwp/test_Autotool.git 如果有需要增加的数据,可以提供校验规则,后续会加入进去。

2020-11-21

空空如也

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

TA关注的人

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