自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (1)
  • 收藏
  • 关注

原创 allure报告中如何让测试步骤更清晰

print的信息显示在了stdout中,logging.info信息显示在log中,当有logging.error时,又出现了stderr。但allure.step也并不是完美的,当报告中想在步骤中显示参数、预期结果,实际结果,或者截图,文件等内容时,用print或logging来输出。allure.attach()表示自己写一个文件,allure.attach.file()从外部传一个文件。allure.step这两种用法,要结合实际编写测试用例中的场景,看哪种方式更适合,也可以结合着使用。

2023-06-05 17:41:45 1553 1

原创 好用的自动化框架-Allure

报告主要包含总览、类别、测试套件、图表、时间刻度、功能、包等7大部分,支持自定义诸多信息,包括附件添加、缺陷链接、案例链接、测试步骤、Epic、Feature、Story、Title、案例级别等,相当强大。allure与pytest的结合使用可以呈现完美的测试报告。

2023-05-25 17:14:13 847

原创 jupyter notebook介绍

目录安装与使用查看配置文件位置修改默认目录认识jupyter操作界面如何将.ipynb文件转换为.py文件jupyter notebook 加载py文件常用功能jupyter notebook项目提交gitlab安装与使用如果本地安装了anaconda,在安装时已经打包安装好,直接启动即可;如果想自己安装,用命令pip或conda安装:conda install jupyter notebook通过命令行输入jupyter notebook启动默认端口8888常用:jupyter noteboo

2021-09-01 16:03:06 493

原创 chrome开发者工具-测试实用

常用面板Chrome开发者工具入口Elements面板Console面板Sources面板Network面板Performance面板Memory面板Application面板Chrome开发者工具入口点击左上角菜单按钮,选择-更多工具-开发者工具(ctrl+shift+I)Elements面板(1)展开Elements面板,点击箭头按钮,箭头按钮会变成选择状态,选中左侧页面要定位的元素,则Elements面板下定位到的元素高亮显示,在Styles tab下可以查看元素样式(2)定位到所选元素,

2021-09-01 10:24:40 375

原创 python基础-最全的文件操作函数汇总

1.输出操作系统特定的路径分隔符 os.sep()2.输出用于分割文件路径的字符串 os.pathsep()3.输出当前平台使用的行终止符 os.linesep()4.获取系统环境变量 os.envison()5.判断文件的权限模式 输出TRUE or False os.access(path,mode)mode:W_OK,R_OK,X_OK6.修改文件的权限 os.chmod(path,mode)7.运行shell命令并返回一个文件对象,然后通过操作文件的方法去操作这个文件对象。os.pop

2020-11-13 10:51:56 367

原创 datetime模块strftime和strptime的区别

strptime():p表示parse,解析的意思,传入字符串和分析格式,返回一个时间对象strftime():f表示format,表格式化,传入时间对象和分析格式,返回一个字符串;参考代码:import datetimetime1=datetime.datetime(2020, 7, 21, 22, 31, 34)print(type(time1),time1)time2=datetime.datetime.strftime(time1,"%Y-%m-%d %H:%M:%S")print(t

2020-09-17 15:14:26 345

原创 pip安装常用命令

强制升级:pip install six --upgrade --ignore-installed six批量导入常用包:pip install -r requirements.txt

2020-08-20 14:48:47 325

原创 docker 入门最全知识总结

一、获取镜像1、从 Docker Hub 上直接拉取镜像docker pull image_name:tag2、修改基础镜像 新建容器 在容器内做出需要的改动 提交镜像 docker commit 容器名字 image_name:tag3、用dockerfile 制作镜像 ...

2020-08-20 14:47:25 189

原创 git 命令查看中文乱码问题解决方案

git config --global core.quotepath false

2020-08-20 14:46:19 262

原创 postman tests

postman中的tests是用做测试结果断言,支持JavaScript语法。是在完成API访问并得到其response回应之后运行的脚本,一般用于获取response的内容,用于之后的其他操作。test脚本需要在某个指定的函数pm.test(…)中执行才会被识别,且作为test脚本运行。pm.test("这里是测试描述",function(){ //需要执行的代码});pm....

2019-11-15 12:12:22 1635

原创 python头文件

#! /usr/bin/env python# -*-coding:utf-8-*-第一行:针对linux类的操作系统,指定系统环境变量设定的解释器路径。告诉操作系统要使用哪个python解释器来执行这个py第二行:是告诉python解释器, 应该以utf-8编码来解释py文件, 对于python 2.6/2.7, 如果程序中包含中文字符, 又没有这一行, 运行将会报错。 但python3...

2019-10-25 19:20:11 3315

原创 PyCharm DIE如何更换python版本

1、点击顶部的Pycharm,然后选择Preference的选项2、在对话框左边选中Project Interpreter,在右边的下拉框中选择你要切换成的python版本,点击下方按钮Apply,然后点击OK,关闭对话框即可。3、回到项目,在项目的左边栏External Libraries下第一个,查看是否修改为你想要的python版本。...

2019-03-27 23:06:52 488

原创 JMeter-引入CI,用Jenkins自动执行脚本,生成测试报告

前面文章生成执行脚本的方式是到JMeter的testSuite目录下通过ant命令执行用例并生成基于HTML的测试报告,此种方式略有繁琐。这篇文章通过引入CI,用Jenkins自动执行脚本,生成测试报告,让接口自动化更加方便有效。首先搭建Jenkins环境,过程略。。。在Jenkins中配置过程如下:打开Jenkins1、配置ant路径:系统管理-Global Tool Configura...

2018-12-11 14:46:57 743

原创 JMeter-搭建ant,生成html测试报告

1、搭建ant环境(版本为1.10.1)(配置环境变量)命令行输入:ant or ant -v成功截图:如果报错:Exception in thread “main” java.lang.NoClassDefFoundError:可能造成的原因:ant版本与本地安装的jdk不兼容,ant版本太高导致:解决办法:卸载ant,重新下载ant1.9.*,不超过1.10.*的2、修改bin...

2018-12-11 14:36:06 464

原创 JMeter-接口测试(四)

以webserver接口测试为例来演示测试过程: http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?op=getMobileCodeInfo 获得国内手机号码归属地省份、地区和手机卡类型信息 输入参数:mobileCode = 字符串(手机号码,最少前7位数字),userID = 字符串(商业用户ID) 免费用户为空字符串;返回数据:...

2018-10-24 14:46:42 830

原创 JMeter-插件安装(三)

一、安装插件管理器 下载jmeter插件管理:jmeter-plugins-manager-0.20.jar后,放入如下目录, {jmeter_home}\lib\ext。 下载地址:https://jmeter-plugins.org/wiki/PerfMonAgent/重新启动JMeter,在选项下可找到插件管理器,如下图 二、在插件管理器中安装插件。 打开插件管理器: ...

2018-07-02 17:12:48 293

原创 JMeter-工具安装(二)

一、下载地址: http://jmeter.apache.org/download_jmeter.cgi 二、JDK环境配置: 需要先配置Java环境。下载JDK,安装完成后,配置环境变量。 右键-属性-高级系统设置-环境变量。 具体步骤如下: 1、JDK下载安装 进入官网 http://www.oracle.com/technetwork/java/javase/archive-...

2018-06-29 17:23:22 262 1

原创 JMeter-工具简介(一)

Apache JMeter 是 100%纯 java 桌面应用程序,被设计用来测试 C/S 结构的软件(例如 web 应用程序)。它可以被用来测试包括基于静态和动态资源程序的性能,例如静态文件,Java Servlets,Java 对象,数据库,FTP 服务器等等。JMeter 可以用来模拟一个在服务器、网络或者对象上大的负载来测试或者分析在不同的负载类型下的全面性能。 另外,JMeter 能够...

2018-06-27 17:59:40 313

原创 排序算法:快速排序

快排的原理: 随便找一个元素,做为轴值,把列表分成左右两个列表,左列表都小于它,又列表都大于它,然后递归把左右列表再排序规则 1.首先找到一个flag,一般取最后一个元素做轴值。(小于flag) 2,确定指针i,指向flag的前一个元素。i=start-1,i的初始值取-1;j=0 j指向遍历的元素 3,规则:用j指向的元素,和flag做比较。如果listx[j]>flag:pa...

2018-03-22 17:53:04 133

原创 排序算法:插入排序

把后面的元素插入到前面一个已经排好序的列表中去def insertSort(listx): xLen=len(listx) for i in xrange(1,xLen): j=i-1 while j>=0: if listx[j]>listx[j+1]: listx[j],...

2018-03-22 17:49:28 155

原创 排序算法:冒泡排序

一个列表中的元素,从前往后,两两比较,把比较出来的最大元素排在后面。def bubbleSort(listx): nLen=len(listx) for i in xrange(nLen-1): for j in xrange(nLen-1-i): if listx[j]>listx[j+1]: ...

2018-03-22 17:42:50 274

原创 App自动化(Appium+Python):查找控件时,sleep时间不确定问题解决方案

把find_element方法封装,循环查找,返回element,如果异常,等待2秒,打印异常信息,如果10次循环结束仍未找到元素,就在向上抛出未找到元素。 直接上代码喽!import timedef find_element(driver,idOrXpath,n=10): for i in xrange(n): try: if idOrXp...

2018-03-13 18:18:17 1483 1

原创 Python多进程操作-进程池(Pool)

在使用Python进行系统管理时,特别是同时操作多个文件目录或者远程控制多 台主机,并行操作可以节约大量的时间。如果操作的对象数目不大时,还可以直 接使用Process类动态的生成多个进程,十几个还好,但是如果上百个甚至更多, 那手动去限制进程数量就显得特别的繁琐,此时进程池就派上用场了。 Pool类可以提供指定数量的进程供用户调用,当有新的请求提交到Pool中时, 如果池还没有满,就会

2018-01-19 16:53:59 2531

原创 Python多进程编程-进程间协作(Queue、Lock、Semaphore、Event、Pipe)

进程与进程之间是相互独立的,互不干扰。如果多进程之间需要对同一资源操作,就需要进程间共享变量,上一篇文章介绍了进程间共享数据的三大类Value、Array、Manager,这三种类的主要区别在于管理的数据类型不同。解决了进程间共享数据的问题,又有新的问题产生,那就是当多进程同时对一个共享资源进行写操作时,容易造成数据混乱。如何解决这一问题呢?这就需要进程间相互协同。 进程间相互协同的方式有如下几

2018-01-12 18:32:02 4740

原创 Python多进程编程-进程间共享数据(Value、Array、Manager)

Value、Array是通过共享内存的方式共享数据 Manager是通过共享进程的方式共享数据。Value\Array 实例代码:import multiprocessing#Value/Arraydef func1(a,arr): a.value=3.14 for i in range(len(arr)): arr[i]=-arr[i]if

2018-01-08 18:22:59 27639 1

原创 Python多进程编程-进程生命周期管理

主要函数: Process():创建进程实例 start():启动进程 join():主进程阻塞,等待子进程执行结束 terminate():强行终止,不推荐 exitcode():进程执行的返回值 is_alive() :判断进程是否正在运行实例代码:import multiprocessingimport timedef func1(msg): for i

2018-01-04 18:07:34 1080

原创 Python多进程编程-开篇

多进程和多线程的区别: Python在多线程编程上比较鸡肋。并发和性能比较差。 Python有一个全局解释锁(GIL)的存在,同一个时间点只允许一个线程在运行 想要同一时间点多个程序在cpu上运行,必须要用多进程编程了。 cpu密集型推荐使用多进程编程 IO密集型:比如程序要频繁地和数据库打交道,或者频繁地读写文件。使用多线程编程。线程开销比进程开销小得多的原因: 进程所占用的内存

2018-01-04 17:45:56 220

原创 python mysql

mysql基本操作连接mysql创建数据库切换数据库创建表操作表:增删改查连接mysql命令:mysql -u用户名 -p密码 -P端口 -hIP 数据库名称举例:mysql -uroot -proot -P3306 -h127.0.0.1 mydb创建数据库命令:create database 数据库名称举例:create database mydb切换数据库show databa

2017-12-26 15:33:09 369

原创 用桌面版Chrome模拟移动浏览器:chrome mobile emulation

一、功能简介chrome emulation可以实现在桌面上调试移动网页,模拟各种主流移动设备及其相关参数:仿真触摸事件仿真设备视角(尺寸/规格/版本)User Agent模仿网络带宽流量控制地理定位覆盖设备方向覆盖CSS媒体类型仿真FAQ二、如何开启1、打开chrome浏览器,按F12,打开开发者工具,点击最左侧类似手机的图标,然后我们

2014-12-18 11:21:00 6505

为初学者提供的有关struts的介绍

是一个word文档,用文字介绍了struts的基本知识,为想了解struts的初学者提供方便。

2009-11-27

空空如也

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

TA关注的人

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