测试
灵欣-cinty
小测试一枚
展开
-
python覆盖率coverage的使用
import osimport unittestimport coverage## # 实例化覆盖类# cov = coverage.coverage(source=['run.py'])# # 开始分析# cov.start()# # suite = unittest.defaultTestLoader.discover(os.getcwd(), "run.py")# # unittest.TextTestRunner().run(suite)# # 结束分析# cov.s...转载 2021-09-10 15:44:20 · 569 阅读 · 1 评论 -
xpath经典定位方式
常用相对定位,以//开头,不依赖页面顺序和位置。只看整个页面有没有需要定位的元素定位方式 //标签名称[@属性名称=值]and or逻辑运算 如: //标签名称[@属性名称=值 and @属性名称=值]//a[@name="tj_login" and @class="s-top-login-btn c-btn c-btn-primary c-btn-mini lb"](1)父子层级定位//div[@id="u1"]/a[@name="tj_login"](2)文本定位..原创 2021-06-30 22:36:56 · 547 阅读 · 0 评论 -
静态方法@staticmethod和类方法@classmethod的使用场景
(1)python @staticmethod 的使用场合 静态方法主要用再需要获取一些固定的值,如获取时间,如获取一些配置文件,这些东西全文都要使用,但是不会对其进行频繁的更改。调用时直接 类.静态方法名 调用就好了.就是整个项目中就可以直接调用静态方法,不需要实例化,本身用类就可以调用import timeclass A(object): def __init__(self, name): self.name = name @staticmeth...转载 2021-04-25 22:51:45 · 643 阅读 · 0 评论 -
多层嵌套取值json
"""找出是否有 { "tradeAuthorizerName":"牛大爷", "tradeAuthorizerIdType":"21", }存在json中"""第一步:遍历取值json中的值,然后输出key值,因为我们要得值在key中第二步:第一步中得到得值是列表,然后来循环取值,取出得是字典。然后比对要找得值,找出来就都打印import rea = {"securitiesCodel":"3600", "cur":"CNY", "regCountry"..原创 2021-04-21 14:28:02 · 1825 阅读 · 1 评论 -
线程之生产者与消费者模式(线程通信,thread+queue)
#python3中from queue import Queuefrom threading import Threadclass Producer(Thread):#生产者 def run(self): global queue count = 0 while True: if queue.qsize() < 15: for i in range(10): .原创 2021-04-12 23:21:47 · 75 阅读 · 0 评论 -
exec-maven-plugin:3.0.0:exec (default-cli) on project ccb-marketing-release_
转载:https://blog.csdn.net/qq_45903639/article/details/115342993maven 配置问题(添加了之后如果已经下载过的坐标就不会去下载了,从本地找,点击OK),运行有没有问题。转载 2021-04-11 03:11:38 · 850 阅读 · 0 评论 -
maven 仓库配置 pom常用属性
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/xsd/maven-4.0.0.xsd"> <!-- 模型版本。m...转载 2021-04-10 22:49:06 · 185 阅读 · 0 评论 -
互斥锁使用(避免全局变量正在使用时被其他线程更改)
from threading import Threadfrom threading import Lockimport time#互斥锁的作用是用来避免全局变量被修改。# 一方使用的时候。另外一方等一方使用完了再使用,不然全局变量大家都在用,最后数据就会出错g_num=0mutex=Lock() #创建一把互斥锁,互斥锁默认是开锁状态def test1(): #这个线程和test2线程都在抢着上锁,如果谁抢到了就上锁成功开始执行。 # 而另一方就上锁失败发生堵.原创 2021-04-08 23:41:07 · 582 阅读 · 0 评论 -
Python多进程拷贝文件
备注:主要要弄清楚需求是做什么。多进程,主要是用什么实现,怎么实现,这里用的进程池来实现。文件在文件夹里面就申请进程池,加入任务,开始执行,至于拷贝过程就是普通的文件读写操作了#创建文件夹#2获取old文件夹中所有的文件的名字#3.使用多进程方式,copy所有文件到新的文件夹:中import osfrom multiprocessing import Poolfrom multiprocessing import Managerdef copyFileTask(name,oldFol.原创 2021-04-07 21:44:59 · 277 阅读 · 0 评论 -
进程间通信(queue+pool)队列+进程池
import osimport timeimport randomfrom multiprocessing import Managerfrom multiprocessing import Pool#写入数据def write(q): for value in ['a','b','C','D']: q.put(value) print("写入数据%s"%value) time.sleep(random.random())#读数据.原创 2021-04-06 21:32:40 · 296 阅读 · 0 评论 -
进程间通信(queue+process)
from multiprocessing import Process,Queueimport osimport timeimport random#写入数据def write(q): for value in ['a','b','C','D']: q.put(value) #q.put把数据丢进队列中 print("写入数据%s"%value) time.sleep(random.random())#读数据def read(q).原创 2021-04-06 21:30:07 · 126 阅读 · 0 评论 -
虚拟机Centos7安装mysql
安装流程参考:https://blog.csdn.net/qq_36582604/article/details/80526287?utm_source=app&app_version=4.5.4遇到输入最后安装成功后,输入密码报错的问题,参考https://blog.csdn.net/iteye_17729/article/details/81678589转载 2021-03-18 14:27:50 · 93 阅读 · 0 评论 -
读取txt文档内容,并保存到相应的xls表格中
#!/usr/bin/env python# -*- coding: utf-8 -*-# @Author : xxxx# @Time : 2020/12/21 21:17#a.txt内容是 1234# 5557#import xlrdimport xlwtpath="a.txt"def get_list(path): file = open(path, "r", encoding='utf-8') lines = file.readl.原创 2021-01-10 21:15:15 · 239 阅读 · 0 评论 -
Openssl 命令之cer证书转成pem. 利用ptf私钥文件生成公钥
PKCS#7 Cryptographic Message Syntax StandardPKCS#10 Certification Request StandardPKCS#12 Personal Information Exchange Syntax StandardX.509是常见通用的证书格式。所有的证书都符合为Public Key Infrastructure (PKI) 制定的 ITU-T X509 国际标准。PKCS#7 常用的后缀是: .P7B .P7C .SPCPKCS#12 常用转载 2020-12-23 10:44:53 · 5703 阅读 · 0 评论 -
selenium自动化(1)
因为要截图,所以封装了一个截图的类#!/usr/bin/env python# -- codin#!/usr/bin/env python# -- coding: utf-8 --# @Time : DATE{TIME}# @Author :cinty# @File : screen_png.pyimport osimport timeimport datetimefrom datetime import datetime#G该文件主要用于生成文件夹保存截图文件#获取当前时间原创 2020-12-21 15:43:56 · 93 阅读 · 0 评论 -
windows系统 Jenkins + Gradle + Git实现自动打包apk
(1)jenkins安装,安装步骤请百度,(Tomcat+jenkins或者用war包也可)(2)Gradle下载安装并配置坏境变量,请自行百度系统变量中增加GRADLE_HOME ,变量值就是所在路径E:\work_path\gradle-2.10在系统变量path中增加%GRADLE_HOME%\bin(3Java坏境安装:jdk8坏境安装,安装步骤请百度(4)git坏境配置,配置过程请自行百度(5)android坏境配置,配置请自行百度,需要配...原创 2020-11-18 19:00:54 · 296 阅读 · 0 评论 -
正则表达式之多种格式的电话号码匹配
\w - 匹配字母或数字或下划线或汉字(我试验下了,发现 3.x 版本可以匹配汉字,但 2.x 版本不可以)\s - 匹配任意的空白符^ - 匹配字符串的开始$ - 匹配字符串的结束2.\S 其实就是\s 的反义,任意不是空白符的字符。同理,还有:\W - 匹配任意不是字母,数字,下划线,汉字的字符\D - 匹配任意非数字的字符\B - 匹配不是单词开头或结束的位置[a]的反义是[^a],表示除 a 以外的任意字符。[^abcd]就是除 abcd 以外的任意字符。3.之前我们用过*原创 2020-11-13 17:00:47 · 2921 阅读 · 0 评论 -
Python的re模块正则式基本匹配匹配
(1) “\b”在正则表达式中表示单词的开头或结尾,空格、标点、换行都算是单词的分割(2) “.”在正则表达式中表示除换行符以外的任意字符(3) “*”表示任意数量连续字符,这种被称为通配符。但在正则表达式中,任意字符是用“.”表示,而“*”则不是表示字符,而是表示数量(4)因为“*”在匹配时,会匹配尽可能长的结果(贪婪匹配)。如果你想让他匹配到最短的就停止,需要用“.*?”(懒惰匹配)(5)数字匹配: \d ,表示任意长度的数字可以用 [0-9]* 或 \d* ,但是需注意*表示的任意长度.原创 2020-11-13 16:34:58 · 510 阅读 · 0 评论 -
向文件写入内容
#创建文件#file_path:文件路径#msg:即要写入的内容def create__file(file_path,msg):f=open(file_path,"a+")f.write(msg)f.close#output = open('result.txt', 'a+')#a+ 追加写入#output = open('result.txt', 'w+')#w+ 删除以前的重新写入...原创 2020-11-11 15:07:16 · 158 阅读 · 0 评论 -
Docker在selenium自动化中的应用,Docker与CI/CD
前言:之前都微微了解过docker.现在才开始真正使用。docker容器主要是为了节省资源而产生的,本人学习主要用来做测试自动化Docker 包括三个基本概念:镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。 容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静转载 2020-11-04 15:56:54 · 183 阅读 · 0 评论 -
Jenkins +jmeter实现接口自动化测试(本篇未用ant)
一:环境配置 (1)下载Jenkins:https://jenkins.io/download/(一定要记住初始密码所在位置) (2)下载jmeter3.0以上,配置环境变量(也可不配置,直接运行bin文件下的jmeter.bat),备注:jmeter配置所需要的Java环境jdk版本和jmeter版本一定要对应(jmeter3.0,jdk版本1.7以上)根据官网配置生成hml的...转载 2018-12-06 11:34:08 · 322 阅读 · 1 评论 -
测试面试常见问题
(1)需求和测试什么联系?(2)测试接口性能时看什么?如果达到瓶颈,如何查找原因(3)遇到死锁怎么解决的?(4)Redis用过吗?说一下(5)sql查看订单表里面相同的订单号 (6) 测试整个流程如何开展的。说一下?(7)了解过中间键吗?说一下(8)做UI自动化是怎么做的。build如何构建的?(9)管理测试的工具你们用的什么?说一下(10)QPS/TPS了解吗?说一下你怎么理解的?(11)吞吐量和TPS是一样吗?说一下理解?(12)接触过单元测试吗?接触过就说一下?(13)说...原创 2020-09-22 17:01:57 · 1164 阅读 · 1 评论 -
数据库学习回顾(二)
(13)like筛选出指定列的格式,%属于通配符。如y%匹配出以y开头的数据,反之,%y匹配出以y结尾的数据,%yu%就是匹配出中间含有yu字符的列表数据。NOT 关键字,您可以选取不匹配模式的记录。select *from student where name like '%y';select *from student where name like 'y%';select *from student where name not like 'y%';(14)通配符_代表替代一个原创 2020-09-16 18:04:10 · 116 阅读 · 0 评论 -
数据库回顾学习及总结(一)
前言:笔者安装的mysql-8.0.21-winx64和Navicat Premium 15,安装教程和破解教程请百度自行下载(1)创建数据库 Create database 数据库名如:create database cs #创建一个名为cs的数据库(2)在数据库中创建表 CREATE TABLE table_name (column_name column_type);如:创建学生表。以学生ID为唯一主键create table student( id sm...原创 2020-09-16 17:09:16 · 167 阅读 · 0 评论 -
python3 unittest+request+HTMLTestRunner接口自动化(五)
(11)马上接近尾声,还差个报告,这个代码报告网上很多自行去下载就行,官网好像也有,贴上代码,(HTMLTestRunner_PY3.py)# -*- coding: utf-8 -*-"""A TestRunner for use with the Python unit testing framework. Itgenerates a HTML report to show the result at a glance.The simplest way to use this is to原创 2020-09-01 12:05:38 · 252 阅读 · 0 评论 -
python3 unittest+request+HTMLTestRunner接口自动化(四)
(9)前面我们已经完成大半部分了。现在呢,还差发送邮件和生成报告。一般测试接口自动化运行结束就要发送邮件给相应的人员,废话不多说。看代码,邮件发送的代码。中文乱码处理方式还有点问题,附件打开正文内容乱码。之后在修改,欢迎大家指正#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2019/11/8 16:25# @Author :xxx# @Site : # @File : test11.py# @Software: PyC.原创 2020-09-01 11:55:19 · 215 阅读 · 0 评论 -
python3 unittest+request+HTMLTestRunner接口自动化(三)
(7)之前的文章已经把该需要的都封装好了,现在呢。我们就要来读取Excel文件了哦,按行读取就行。Python自带的paramunittest会自动识别用例的(#paramunittest是unittest实现参数化的一个专门的模块,可以传入多组参数,自动生成多个用例),好啦,我们开始看代码,读取Excel代码如下:readExcel.pycaselist.xlsx文档我的内容是这样的,当然你们可以按照自己测试的接口文档来更改,第一行的用例名(case_name),方法(method),接口路径(pat原创 2020-09-01 11:00:01 · 253 阅读 · 0 评论 -
python3 unittest+request+HTMLTestRunner接口自动化(二)
(4)上一篇我们已经读取了配置文件。现在就开始使用读取出的值组合成接口的url,即现在可使用的url(geturlParams.py)#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2018/11/8 16:25# @Author : xx# @Site : # @File : test11.py# @Software: PyCharm#获取接口的URLfrom testFile import readConf...原创 2020-09-01 10:45:05 · 242 阅读 · 0 评论 -
python3 unittest+request+HTMLTestRunner接口自动化(一)
标题原创 2020-09-01 10:24:33 · 932 阅读 · 2 评论 -
pycharm运行不能生成HTML测试报告
看网上是因为Unittest运行是不会进入main函数的,所以测试了一下print,果然没有打印出mian函数 (2)试了很多种方法,最后发现只有重新修改run配置才成功,点击右上角run ,如下图新增一个Python运行环境,是Python不是python_tests哦,回到首页点击刚配置的运行就可以了...转载 2019-02-19 15:41:20 · 1843 阅读 · 0 评论