![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python
文章平均质量分 58
Miss糖豆
这个作者很懒,什么都没留下…
展开
-
Docker部署nginx并完成静态文件映射
参考资料:https://www.runoob.com/docker/docker-install-nginx.html1.拉取镜像:docker pull nginx:latest2.启动容器:docker run --name 容器别名-p 80:80 -d nginx参数说明:--name nginx-test:容器名称。 -p 8080:80: 端口进行映射,将本地 8080 端口映射到容器内部的 80 端口。 -d nginx: 设置容器在在后台一直运行。...原创 2021-09-06 12:41:17 · 899 阅读 · 0 评论 -
【实战】实现跨请求地保持登录的神器-session你get了么
前言在学习自动化或者是去面试自动化相关岗位时,难免会遇到的一个问题是:如何处理自动化请求中的登录信息?不论是在学习接口自动化还是出去面试自动化测试岗位,测试人员遇到的一个问题都是如何处理登录?举例一个很简单的例子:在做接口自动化测试的时候,肯定会遇到一种测试场景在进行操作的时候会提示用户进行登录或者直接返回HTTP状态码401(未授权)。例如:我们在进行电商平台购物时,要创建订单前都会提示我们先进行登录。 因为HTTP协议是无状态的,所以在创建订单时,服务器不知道哪个用户在操作。因此,用户在原创 2021-09-02 10:28:47 · 145 阅读 · 0 评论 -
测试报告--邮件发送(单人、多人、附件)
实战背景描述将端口扫描结果存储到txt文件内,通过qq邮箱将扫描结果文件发送给其他人。调用方法在实际端口扫描结束后,调用邮件发送方法即可 。实现邮件发送代码# !/usr/bin/python3import smtplibfrom email.mime.text import MIMETextfrom email.mime.multipart import MIMEMultipartfrom email.utils import format...原创 2021-08-19 14:40:03 · 642 阅读 · 0 评论 -
Python之ocr识别图片并转为excel文件
环境安装tencentcloud-sdk-python:pip install -i https://mirrors.tencent.com/pypi/simple/ --upgrade tencentcloud-sdk-python参考地址:https://cloud.tencent.com/document/sdk/Pythonxlutils:pip install xlutils参考资料:https://blog.csdn.net/qiuqiuit/articl...原创 2021-07-14 14:52:41 · 8933 阅读 · 2 评论 -
YAML-解决自动化测试中的上下接口依赖数据
在接口自动化测试过程中,存在部分公共配置、以及登录等信息需要存储,方便其他接口直接读取使用。这个时候可以用到yaml的写和读的功能。yamlxi原创 2021-06-17 11:02:51 · 748 阅读 · 0 评论 -
Python-打印时间相关基础
参考资料链接:https://blog.csdn.net/tszupup/article/details/108128037原创 2021-06-10 10:16:13 · 206 阅读 · 2 评论 -
Pytest+Allure报告内容定制基础
Allure常用装饰器@allure.epic@allure.feature@allure.story原创 2021-06-08 14:32:32 · 312 阅读 · 1 评论 -
【实战】单元测试有多好学,小白告诉你(附上小案例)
在学习测试理论基础时,相信大家都曾看到这个问题“请说说软件测试分类”,其中一个答案就是:按测试阶段,软件测试可分为:单元测试、集成测试、系统测试、验收测试。那么,单元测试?单元测试?什么是单元测试呢?最初作为一个对单元测试毫无概念,对单元测试的了解仅限于官方简介说明,且只会if else基础语法的初学小白而言。觉得单元测试肯定是需要强大的代码能力,是那种能写上千万个字符代码的资深码农才会的技能。后面学习了测试开发课程后发现,其实单元测试从某种层面上可以简单的说就是测试某个单元函数方法是否满足设计的测原创 2021-06-03 16:39:32 · 6738 阅读 · 1 评论 -
Allure报告优化-添加模块名称、动态用例标题
优化目标:1.动态读取用例标题-title2.重新命名用例模块名称-story优化前:优化后:原创 2021-05-12 10:51:44 · 572 阅读 · 0 评论 -
【实战】python+pytest+allure+jenkins实现接口自动化
从0开始的接口自动化日常接触到的接口自动化从实际目标可以划分为两大类:为模拟测试数据而开展的接口自动化这种接口自动化,大多是单次执行,目的很明确是为了功能测试创造测试数据,节约人工造数据的时间和人工成本,提高功能测试人员的测试效率。在功能测试之前提前发现错误而开展的接口自动化这种接口自动化的工作流程跟功能测试一样,需要设计接口测试用例,然后执行接口测试用例。说白了就是对单接口进行功能校验,包括接口参数的必填性、长度字符类型限制、入参枚举值等是否正确、响应数据是否正确等进行校验。本文主要讲原创 2021-05-08 17:56:29 · 1531 阅读 · 6 评论 -
Docker和虚拟机之间的通信过程
1.虚拟机的服务器IP地址:虚拟机创建成功,生成一个ens33网络2.容器跟宿主机通信: 安装完docker后,会创建一个docker0 (虚拟网口)这是一个网桥,容器跟宿主机就是通过这里建立通信。 通过ip addr可查看虚拟机上现有的网络ip3.容器之间通信: docker0 创建时会自动创建3种网络模式:host、bridge、none,默认容器是挂在bridge。容器之间的通信,可通过各个容器对应的ip进行通信。查看bridge下所有容器ip:docke...原创 2021-04-28 15:04:16 · 817 阅读 · 0 评论 -
Docker-部署uwsgi服务代替django自带的服务器
前言 在实际使用django框架开发后端时,一般使用django自带web服务器,该服务器通过命令“python manage.py runserver”启动。但是在实际项目发布时,一般使用nginx+uwsgi来作为项目的服务器,其中nginx主要解析处理静态请求,uwsgi主要处理发现django服务的动态请求。 那么为什么要使用uwsgi来代替django自带的服务呢?大概的考虑因素无非就是性能、安全,反正整体就是更优于django自带的服务,具体的可百度参考。在开...原创 2021-04-28 14:22:20 · 918 阅读 · 1 评论 -
Django中的路由分发
tips: 简单的一个应用程序是一般能通过一级路由实现,即用户访问某个地址,django根据地址返回对应的视图或提示。但是当系统变大变复杂后,一个项目下可能有多个应用,每个应用的访问路径不一样,这个时候可将路由配置做分级管理,也就是路由分发概念。项目实战我们规划,测试工具管理平台分为两个应用:一个应用处理自定义的测试管理工具(例如:测试计划、测试用例、仙姑、环境等)----访问地址均已“api/”开头一个应用对接jira,同步jira的缺陷----访问地址均已“jira”开头路由..原创 2021-04-27 19:06:26 · 1894 阅读 · 0 评论 -
Docker部署-通过nginx管理web前端页面
前提本地已完成“测试管理平台”的开发:实现方式:前后端分离前端:html+script+css+javascript后端:django框架本地服务:django自带服务数据库:django默认sqlite3数据库Docker部署测试管理平台整个测试管理平台需要用到三个容器,分为为:mysql、python(使用uwsgi服务器代替django自带的服务)、nginxNginx作为前端静态页面的服务器,主要负责管理操作静态资源文件。uwsgi作为django应用的服务器原创 2021-04-27 17:32:36 · 912 阅读 · 0 评论 -
Docker基础+Docker安装mysql
概念dcoker内有两个概念:镜像:容器的模板,是一个文件,包括容器云心时所需要的数据,只可读容器:运行中的进程,依赖镜像运行,是镜像的具现化;可读可写两者关系:镜像类似python中的类,容器类似python中的类的实例化对象;一个镜像可以有多个容器;容器引用镜像,也可对镜像进行扩展,类似代码里面的继承和衍生常用命令docker version :显示 Docker 版本信息。docker pull : 从镜像仓库中拉取或者更新指定镜像docker images : 列出原创 2021-04-27 15:17:38 · 156 阅读 · 1 评论 -
Python-读取yaml文件(响应数据报告模板)
环境安装pip install pyyamlyaml文件语法:大小写敏感,缩进不可使用tab,空格必须相同支持三种类型数据:普通变量、字典类型、列表类型注释:通过“#”进行注释示例如下:HOST: { 'host':'http://v.juhe.cn',}PATH: { 'path':'/toutiao/index',}EXPECT: { 'expect':'success!',}HttpApi: { "retc原创 2021-04-16 09:27:42 · 534 阅读 · 0 评论 -
Python-类方法、实例方法、对象方法区别
类: 1.实例方法:方法必须带self入参 2.类方法: 第一个入参必须是类,一般统一叫cls(跟self一个意思) 调用方式: 2.1 可通过:类名.类方法名()调用 2.2 可通过:对象.类方法名()调用 类实例化产生对象后,对象重新定义了公共属性,但是类方法仍使用的是类初始化定义的属性 3.静态方法: 无需带self参数 标志:@staticmeth.原创 2021-03-29 17:42:34 · 797 阅读 · 0 评论 -
Django-引用js文件失败
失败提示:Refused to execute script from ‘http://127.0.0.1:8081/media/xxx.js’ because its MIME type (‘text/plain’) is not executable, and strict MIME type checking is enabled.解决方案:在项目的settings.py文件末尾添加:import mimetypesmimetypes.add_type('applicati.原创 2021-03-27 19:58:46 · 652 阅读 · 2 评论 -
(01)Django-环境安装和项目初始化实践
在虚拟环境下安装django指令:pip install django原创 2021-03-13 16:54:18 · 127 阅读 · 0 评论 -
Django-创建虚拟环境
tips 在进行开发时,可能电脑上安装的环境版本冲突导致开发过程很多问题,此时可创建虚拟环境,在虚拟环境内重新安装开发环境。创建虚拟环境 指令:python -m venv django_env 其中django_env为虚拟环境名称 创建成功如下:激活虚拟环境 1.cd进入虚拟环境的Scripts文件下 2.输入:activate.bat或者直接输入:django_env\Scripts\activate.bat...原创 2021-03-13 11:06:11 · 201 阅读 · 0 评论 -
visual studio code-连接gitt拉取远程代码
1.本地新建文件夹2.gitee新建仓库,并复制仓库地址3.visual studio code打开本地文件夹,左下角打开命令窗口,并输入clone代码命令--代码拉取成功拉取成功本地提交代码原创 2021-03-10 08:46:33 · 4483 阅读 · 0 评论 -
测试框架-pytest(实现基础接口自动化常用的知识点)
pytest是python自带的单元测试框架,是unitest的升级版本安装:pip install pytestpip install pytest-html 原生态报告模版查看安装结果:pip show pytest注意事项:使用pytest框架,默认识别“test”,所以:1.测试用例必须以test开头,例如:test_A2.测试类必须以Test开头(第一个字母大写)3.对应的py文件必须以test_开头,或者_test结尾的;4.断言必须使用assert..原创 2021-02-24 14:34:18 · 336 阅读 · 0 评论 -
【实战】python-xlrd读取excel测试用例
常用的管理测试用例的方法:excel、yaml接口测试用例:表头:请求url、请求头、请求方法、请求体、期望结果、返回结果(写入)工作表:根据业务模块,分为不同的工作表目标:python+requests+excel步骤:excel测试用例读取 接口请求代码构建 测试结果写入excel...原创 2021-02-24 14:33:25 · 505 阅读 · 2 评论 -
python--Allure测试报告
jenkins+Allure:安装(安装时勾选安装完成后自动重启jenkins)全局工具配置构建项目:源码管理:构建配置构建后配置问题:解决办法:系统管理-全局设置-新建如下设置:cmd命令生成Allure:1.下载-解压-配置环境变量下载地址:https://github.com/allure-framework/allure2/releases/解压成功后,将bin目录配置到环境变量path下2....原创 2021-02-24 14:27:03 · 327 阅读 · 0 评论 -
Python-将含有多个py文件的项目编译成exe可执行程序(以及遇见的问题)
前提:项目包含两个文件:1.端口扫描工具的代码文件(内部引用发送邮件的py文件代码)2.发送邮件的代码文件安装环境直接pip install pyinstaller,安装报错按照如下步骤安装:(1)pip install pywin32;(2)pip install wheel(3)pip install -U setuptools(4)pip install pyinstaller安装成功后,就可以进行python程序的打包了打包1.进入到项目所在的文件,原创 2021-01-26 15:35:28 · 1560 阅读 · 0 评论 -
Python+Tesseract-OCR识别图片上的文本内容
目标解决UI自动化过程中的图文验证码问题,过程大致分为两个步骤:自动下载网页上指定的图片 识别图片上的文本内容本文以“识别页面上指定图片的文本“为例。代码实现效果环境准备Pytesseract Tesseract-OCR Pillow手动安装pytesseract库命令:pip install pytesseract安装Tesseract-OCR.exe下载地址https://github.com/UB-Mannheim/tesseract/wiki原创 2020-07-31 09:33:28 · 725 阅读 · 0 评论 -
python读取测试用例
一、敲黑板,划重点在自动化测试过程中,经常需要使用excel文件来存储测试用例,那么在表格内设计好了测试用例数据后,如何通过自动化读取呢?此时就需要测试小姐姐动手写“代码”了~本文主要介绍通过python来读取表格数据。Python读取表格的方式大概有三种(如下图介绍),本文侧重点使用xlrd模块来读取excel数据。1.读取excel文件,主要掌握以下几个结果内容:打开文件 读取工作表 遍历每个单元格,组成字典(for循环语句) 字典组成列表(for循环语句)2.读取表格.原创 2020-07-10 08:43:08 · 1206 阅读 · 0 评论 -
Python脚本生成可执行文件
目的:将已经编辑好的脚本,编译生成可执行文件,便于在其他电脑或供其他人使用程序安装文件编译pip install pyinstaller 安装失败,由于访问国外网站,访问超时下载文件安装下载地址:http://www.pyinstaller.org/downloads.html打开cmd命令,进入压缩文件所在的地址:执行python setup.exeinstall安装成功:进入到python脚本目录,执行pyinstall -F -w 脚本文件...原创 2020-06-09 10:32:46 · 705 阅读 · 0 评论 -
Python的内置property函数简介(装饰器、修改器)
Python中属性和方法的访问权限问题,一般属性命名直接使用下划线开头,通过这种方式来暗示属性是受保护的,不建议外界直接访问,那么如果想要访问该属性,可以通过装饰器来访问。装饰器简单的说就是封装一个函数,并以这样或那样的方式来修改它的行为。装饰器以“@”开头,装饰器可分为两种,一种是python内置的;一种是用户自定义的装饰器@property访问属性:定义时,在实例方法的基...原创 2020-03-03 16:24:15 · 247 阅读 · 2 评论 -
Python面向对象(类的继承和方法重写)
Python面向对象格式:class 父类名称:面向对象的技术包括:类、类变量、局部变量、实例变量、方法重写、继承、方法、对象等详细资料参考:https://www.runoob.com/python/python-object.html类的继承即一个派生类(derived class)继承基类(base class)的字段和方法子类的格式:class 子类名称(...原创 2019-11-06 14:50:08 · 440 阅读 · 0 评论 -
Python内置函数_init_()作用
__init__()方法是一种特殊的方法,被称为类的构造函数或初始化方法,当创建了这个类的实例时就会调用该方法类的方法与普通的函数只有一个特别的区别:它们必须有一个额外的第一个参数名称, 按照惯例它的名称是 self,在实际调用过程中,self可不用不用传入相应的参数未对类进行实例化:类的函数方法,第一个参数必须是self 在调用函数时,由于类未进行实例化,故每个函数方法必须单独传入参...原创 2019-11-04 19:42:07 · 2215 阅读 · 0 评论 -
Python脚本运行出现异常时的处理方法
Python脚本运行发生异常时,会出现导致运行停止的问题,此时可以通过异常处理,来使脚本继续执行下去。异常处理常见的方法:try/except try/finallytry/except带异常类型 只有发生指定类型的异常,才会打印对应的log信息不带异常类型不管发生什么类型的异常,都会直接打印异常的log信息try/finally不论是否发生异常...原创 2019-11-04 14:48:37 · 832 阅读 · 0 评论 -
(3)Python循环语句
if语句单条件语句格式:if 判断语句: 执行语句else: 执行语句嵌套条件语句格式:if 判断语句: 执行语句elif 判断语句: 执行语句else: 执行语句脚本:#!/usr/bin/python# -*- coding: UTF-8 -*-num = 2num1=3#嵌套条件语句,使用elifif ...原创 2018-07-23 15:21:23 · 229 阅读 · 0 评论 -
(1)Python基础语法和变量类型
一、python基础语法Tips:脚本开头注意事项:#!/usr/bin/python 调用python自有得编辑器#_*_ coding:UTF-8 _*_ 防止中文编码错误标识符注意事项:必须以字母、数字、下划线组成,且不能以数字开头,严格区分大小写以单下划线开头得字符,代表不能直接访问得类属性以双下划线开头的字符,代表类的私有成员以双下划线开头...原创 2018-07-20 17:09:32 · 235 阅读 · 0 评论 -
(4)python变量常用方法(数字和字符串)
注意:在(1)Python基础语法和变量类型的基础上学习此内容Python Number(数字)Python Number(数字)用户存储数值,数据类型是不允许改变的,意味着改变number数据类型,将重新分配内存空间可使用del语句删除一些number对象的引用脚本:运行结果正常脚本:对象被删除,故运行结果异常数据类型转换:语法:类型(数据)Python常用得数学...原创 2018-07-27 14:02:33 · 298 阅读 · 0 评论 -
(5)python函数和模块调用
Python函数函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段定义一个函数的原则:必须以def开头,后接函数名称和圆括号 圆括号用于定义参数,任何传入的参数和自变量都应该放在圆括号内 函数内容以冒号起始,并且缩进 Return[表达式]结束函数,选择性的返回一个值给调用方。可不带任何表达式参数传递在python中变量是没有类型得,对象有类型:...原创 2018-07-27 14:03:53 · 280 阅读 · 0 评论 -
python面对对象(类、对象)
术语:类class:用来描述具有相同属性和方法的对象的集合。类定义了该集合中每个对象所共有的属性和方法。对象就是类的实例方法:类中定义的函数对象:通过类定义的数据结果实例。对象包括两个数据成员(类变量和实例变量)和方法创建类:使用 class 语句来创建一个新类,class 之后为类的名称并以冒号结尾实例:class BaseView(object): def...原创 2018-12-25 15:03:25 · 228 阅读 · 0 评论 -
13.python接口测试-发送http请求
简介:http请求的类型大概有以下几种:get、post、put、delete,主要以get和post请求居多python里面的requests库支持发送http请求发送http基础请求发送get请求定义基础请求url:base_url=http://httpbin.org发送请求:r=requests.get(base_url+’/get’)打印响应状态:p...原创 2019-03-15 16:04:53 · 249 阅读 · 0 评论 -
python-unittest框架下main函数不执行问题汇总
问题场景:在main里面定义了HTML报告,但是运行时不生成报告在main里面定义用例执行顺序,但是运行时仍按照默认顺序执行原因:在main里面放一个print语句,再次运行脚本,发现if __name__ == '__main__'中的代码根本没执行,所以设定的测试报告HTMLtestrunner和用例顺序无效解决办法:参考资料:https://www.cnblogs...原创 2019-03-20 15:36:57 · 1756 阅读 · 0 评论 -
14.python HTMLtestrunner测试报告
HtmlTestRunner下载安装下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html直接下载方式到python安装目录的Lib文件下修改兼容python3(注意复制的时候容易出现多余的空格,导致运行报错)第94行,将import StringIO修改成import io第539行,将self.out...原创 2019-03-20 15:40:16 · 128 阅读 · 0 评论