自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(60)
  • 收藏
  • 关注

转载 linux find查找文件/目录

查找当前目录下某个文件find . –name [filename]-i 不区分大小写find . –iname [filename]-type 按类型进行查找,d查找目录,f查找文件find . –type d –name [document]find . type f –name [filename]-user 按所有者查找文件/目录f...

2019-05-12 17:32:00 186

转载 linux xshell 上传/下载文件

用xshell对linux上传/下载文件,需要安装lrzszyum install lrzsz上传文件:进入到要上传文件的目录下,输入rz,选择文件即可下载文件:sz [下载文件名]转载于:https://www.cnblogs.com/JcHome/p/10852661.html...

2019-05-12 16:25:00 179

转载 Appium scroll滑动页面

Appium 的scroll()方法也是滑动页面,不过不是滑动滚动条,而是获取两个元素,然后从从一个元素滚动到另一个元素。方法介绍:scroll(self, origin_el, destination_el, duration=None):参数: - originalEl - 要滚动的元素 - destinationEl - ...

2019-05-12 12:19:00 1270

转载 Appium swipe之屏幕上、下、左、右滑动

在appium 的appium\webdriver\extensions\action_helpers.py下提供了一个可以上下左右滑动的方法:swipe()这个方法用起来到也比较简单,首先获取屏幕的宽度、高度,然后计算出滑动的开始位置到结束位置的距离,再把参数传递给swipe()调用即可:不过要先弄清楚手机屏幕的起始坐标位置,要不然,滑动时就打不到效果了。手机屏幕的起始...

2019-05-12 10:20:00 501

转载 Appium 定位元素

Appium 元素定位通过id定位driver.find_element_by_id("com.tencent.mm:id/cw").click()通过name定位:driver.find_element_by_name("转转二手交…").click()通过单独的class定位(比较少用,在app中不太实际,因为同一个页面...

2019-05-12 08:43:00 140

转载 使用adb 命令查看手机应用包名、Activity的信息

在进行App自动时,需要查看手机应用包名、Activity的信息,下面介绍一种简单的查看手机应用的信息:1.启动手机的app2.使用adb shell dumpsys window | findstr mCurrentFocus 命令,可以查看当前启动中的应用信息转载于:https://www.cnblogs.com/JcHome/p/10849518.html...

2019-05-11 18:19:00 900

转载 selenium (八) 图片验证码识别

1.需要安装Image 模块,安装时会自动帮我们安装:Installing collected packages: pytz, django, pillow, Image 关联的包pip install Image 2.安装pytesseractpip install pytesseract 3.安装tesseract-ocr识别引擎Tesseract的OCR引擎最先由HP...

2019-05-04 17:42:00 825

转载 selenium (七) 上传文件

由于上传时,需要在window系统上有选择文件的操作,因此需要借助一个工具:AutoIt,下载地址:https://www.autoitscript.com/files/autoit3/autoit-v3-setup.exe ;下载后直接安装即可。第一步:打开Auto Window Info 工具,获取window上控件的信息.第二步:打开SciTE Script E...

2019-05-04 11:39:00 117

转载 selenium (六) 常用的页面元素的操作

WebElement类提供的属性:tag_name 获取元素的标签名text 获取元素的文本。size 获取元素的大小location 获取元素在浏览器中的坐标位置,如{'y': 19.0, 'x': 571.0}rect 获取包含元素大小和位置的字典WebElement类提供的方法:click() 点击操作submit() 提交表单...

2019-05-03 19:09:00 148

转载 selenium (五) ActionChains

ActionChains类其实就是对鼠标操作的扩展,比如右键、双击、按下拖动等操作还是先看看ActionChains自带的例子:menu = driver.find_element_by_css_selector(".nav")hidden_submenu = driver.find_element_by_css_selector(".nav #submenu1")ActionCha...

2019-05-03 17:50:00 399

转载 selenium (四) WebDriverWait 与 expected_conditions

在介绍WebDriverWait之前,先说一下,在selenium中的两种等待页面加载的方式,第一种是隐式等待,在webdriver里面提供的implicitly_wait()方法,driver.implicitly_wait(30) #单位:秒第二种是显示等待,是在support/wait中的WebDriverWait类中实现,可以根据需要设置等待时间和每次等待的步长。当前还有种等...

2019-05-03 12:26:00 357

转载 selenium (三) 下拉框选项操作

对下拉框操作的方式其实有多种,可以先通过find_elements_by_xpath()获取到下拉框中的所有选项列表,然后在通过list元素进行click()来选择选项(这是我最初实现对下拉框操作的方式),也可以使用selenium自带的方法实现下拉框选项的操作。两者其实差不多,至于要用哪种方式,这个看个人喜好。以下selenium自带的下拉框处理方法。selenium中有一个类单独...

2019-05-02 17:35:00 1742

转载 selenium (二) 浏览器的基本操作

在上一篇中,已经介绍过selenium的元素定位,下面介绍一下,webdriver对浏览器的操作:以下内容取自selenium/webdriver/remote/webdriver中的属性和方法获取浏览器标题:driver.title获取当前浏览器的url地址:driver.current_url获取当前页面的源码:driver.page_source这个属性其实挺...

2019-05-02 13:57:00 155

转载 selenium (一) webdriver 元素定位方法

在selenium/webdriver/remote/webdriver中可以看到webdriver提供的元素定位方法。目前提供的定位方式共8种:find_element_by_id()find_element_by_xpath()find_element_by_link_text()find_element_by_partial_link_text()find_element_by...

2019-05-02 12:40:00 211

转载 selenium 常见问题

启动selenium时报错如下异常:selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH.解决方式:需要下载geckodriver,并放在path的环境变量下,下载地址:https://github.com/mozilla/...

2019-04-21 22:05:00 277

转载 locust 实战:完成用户登录并下单的流程

locust 实战:用户登录并下单涉及内容:1、session信息关联2、用户数据参数化3、对响应数据进行检查点设置具体代码如下:#-*-encoding:utf-8-*-from locust import HttpLocust,TaskSet,taskfrom locust.clients import HttpSessionimport...

2019-04-11 15:29:00 1096

转载 linux 打包和解包文件

tar [option] [file]-c:创建一个新的归档-v:冗长地列出被处理的文件-f:指定归档文件的名称-x:解压文档包创建归档tar cfv test.tar /tmp/test创建归档并进行压缩为.gz文件-z 归档后调用gzip工具进行压缩tar czvf document.tar.gz document/project...

2019-01-19 00:18:00 84

转载 linux 压缩和解压文件(.gz\.bz2)

gzip 压缩指定文件(.gz)gzip test-c[可选参数] 压缩到指定的文件gzip -c test > test.gz-r[可选参数] 递归压缩文件 gzip -r /usr/test 压缩目录下的所有文件gzip /tmp/*gzip 解压指定文件(.gz)gzip -d test.gz解压目录下的所有文件gz...

2019-01-18 21:34:00 85

转载 locust 压测之脚本检查点

检查点简而言之是用来检查脚本是否达到事先预想的结果,因为locus判断请求是否成功只是通过请求响应的状态码是否为200或2xx来进行,缺乏可靠性。因此,有时请求返回的是200,但是却并未是测试想要的结果。所以需要使用检查点来检查请求返回的数据是否正确,增加脚本的可靠性和说服力。要获取到请求返回的数据信息,可以使用正则表达式来获取页面中想要的内容,如果是对http接口的压测,可以直接获...

2019-01-13 20:30:00 246

转载 Python requests库

Python requests是python的一个HTTP客户端库,可以使用requests库提供的方法对http协议进行请求。requests安装:Pip install requests 也可以下载安装包进行安装。Python setup.py installRequests 方法:发送get请求的方法,语法格式get(url, param...

2019-01-13 14:35:00 79

转载 jmeter 压测之动态数据关联

在进行压测时,经常需要对一些动态的数据进行数据关联。要不然容易造成脚本回放失败,或者多个虚拟用户执行时,只有一个用户运行成功。如下图:未关联数据时,脚本参数及回放结果因此,在进行压测时,想要脚本能更好的模拟用户场景行为,就需要对动态数据进行关联,至于那些是动态数据,可以借助fiddler或其他抓包工具对提交的参数进行分析,或者直接咨询相关技术人员,那些...

2019-01-12 22:53:00 313

转载 Jmeter 之数据库测试

1、在需要测试计划页面,导入数据库驱动jar包。2、在线程组下,添加数据库连接配置控件:JDBC Connection Configuration3、设置同步计时器的参数,用于并发使用4、向数据库表中插入数据5、查询数据库表信息。运行结果:转载于:https://www.cnblogs.com/...

2019-01-11 22:31:00 76

转载 Jmeter 参数未编码异常:java.net.URISyntaxException: Illegal character in query at index 172

最近在使用jmeter进行测试时,每次回放时,都回放失败,查看response data 提示:java.net.URISyntaxException: Illegal character in query at index 172 的异常信息。如下:java.net.URISyntaxException:Illegal character in query at index 17...

2019-01-08 22:53:00 1325

转载 Fiddler 过滤地址设置

1、在fiddler右边工具栏中找到Filters过滤器->勾选:Use Filters->在hosts中选择过滤规则和要过滤的地址。如下图:2、点击【Actions】按钮,选择:Run Filterset now,就会立即生效,过滤相关的地址。3、如果不在需要过滤的话,去掉【use Filters】复选框即可以下是过滤规则的相关说明:...

2019-01-07 22:43:00 400

转载 loadrunner 连接mysql数据库获取数据进行参数化

要使用loadrunner连接mysql,取数据库中的数据进行参数,需要先安装mysql 驱动。可在网上下载。以下是loadrunner上连接mysql数据库的配置:1、选择要替换为参数的内容,右键->弹出面板->选择replace with a parameter。2、在parameter name 处填写参数名称,也可以取默认,直接点击【ok】按钮,...

2019-01-06 19:57:00 240

转载 性能测试常见的指标(一)

性能测试最基本要考虑以下几点:1、时间特性,主要指的是软件产品的事物响应时间(用户发出请求到收到应答的这段时间)2、资源利用率,包括:cpu、内存、网络、硬盘、虚拟内存(如Java虚拟机)3、服务器可靠性,指服务器能在相对高负载情况下持续的运行4、可配置优化性,指服务器配置优化、业务逻辑优化、代码优化等性能指标:1、响应时间响应时间是最能反应服务器...

2019-01-03 00:18:00 883

转载 xampp 启动apache 提示:Error: Apache shutdown unexpectedly.

无法启动xampp的apache提示错误:下午 8:32:21 [Apache] Error: Apache shutdown unexpectedly.下午 8:32:21 [Apache] This may be due to a blocked port, missing dependencies,下午 8:32:21 [Apache] ...

2018-12-31 09:58:00 1129

转载 mysql 初级篇(三) 触发器、存储过程、游标

mysql 初级篇(三)触发器、存储过程、游标触发器triggerCreat trigger buggoodAfterInsertOn ordFor each rowBeginUpdate goods set num=num-new.much where id=new.gidEndNew insert 来引用,因为insert插入新的行,所以用new来引用Old del...

2018-12-28 23:25:00 92

转载 mysql 基础篇(二) 账号、权限管理

mysql 基础篇(二)账号、权限管理、备份与还原建立账号密码:Grant all on test.* to “cj”@”localhost” identified by “cj”; 建立账号如果报错:需要执行flush privileges 后,在重新执行添加用户就可了。登录报错,如下图:解决方法:1.停止mysql服务2.执行mysqld_s...

2018-12-28 23:24:00 72

转载 mysql 基础篇(一) 数据库、表操作

数据库、表操作Show databases ;显示所有数据库Use test ; 使用test数据库Desc test ; 展示test数据库的表结构Create database testDB;建立新的数据库。Create table user(id int(10) primary key auto_increment,name varchar(20),age tinyint...

2018-12-28 23:18:00 73

转载 appium 获取微信webview设置

appium 设置获取微信webview信息(注:此贴参考网上文章,经测试确实可以获取微信webview信息)具体步骤如下:1.扫描二维码,进入微信的debug模式2.勾选Inspector调式功能3.在adb shell 指令可查看到相关信息,执行:adb shell dumpsys activity top | findstr ACTIVITY ,可获取到...

2018-12-28 22:50:00 179

转载 appium 自动化测试踩过的坑

appium 常见问题[appium v1.9.1]问题1:webview 版本号与chromedriver 版本不对应。WebDriverException: Message: An unknown server-side error occurred while processing the command. Original error: No Chromedrive...

2018-12-28 22:30:00 470

转载 linux ip地址配置

Centos 系统ip配置centos系统ip配置文件的路径:/etc/sysconfig/network-scripts目录中。以下是ip配置文件默认的配置:IPV6 INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_PEERDNS=yesIPV6_PEERROUTES=yesIPV6_FAILURE_FATAL=noNAME=eno16...

2018-12-28 00:16:00 313

转载 python json数据格式

Python json模块JSON(JavaScript Object Notation)是javascript对象表示法,它是一种基于文本,轻量级数据交换格式,JSON有两种表示结构,一种是对象结构,一种是数组结构。对象结构以{键:值}的形式表示,类似于字典的形式。例如:{ 1:{ "city_id":01, "city_name":"北京",...

2018-12-26 07:52:00 114

转载 python logging日志记录

日志logging模块日志记录的作用:基本上就是收集与程序运行有关的数据,这样可以在随后进行检查(或者累计数据)logging.basicConfig函数的配置:filename:指定日志文件名filemode:指定日志文件的打开模式,‘w’或‘a’format:指定输出格式和内容,format可以输出很多有信息。%(levelno)s:打印日志级别的数值%(levelname)...

2018-12-23 10:34:00 172

转载 Python 文件(读\写)操作

文件(读\写)操作open()函数,用来打开文件,创建file对象。open(name[,mode[,buffering]])name:要打开的文件mode:是打开文件的模式(读、写、追加)buffering:是否要寄存,默认为0或者False(不寄存),1或True表示寄存(意味着使用内存来代替硬盘,让程序更快,只有使用flush或者close才会更新硬盘上的数据),如果大于1表示...

2018-12-17 23:10:00 92

转载 python time模块

time模块time模块,常用方法:time()localtime()asctime()strftime()strptime()mktime()clock()time()方法,获取当前时间的时间戳print time.time()运行结果:1545005056.78[Finished in 0.9s]localtime()方法,将获取到的时间戳转换为元组(struct_...

2018-12-17 20:21:00 74

转载 python 正则表达式

正则表达式(re)正则表达式是可以匹配文本片段的模式,可以用来匹配行为搜索文本中的模式,并且用计算后的值替换特定模式,或者将文本进行分段。预定义字符串集:\d    数字[0-9]\D    非数字:[^\d]\s   空白字符\S    非空白字符:[^\s]\w    单词字符:[a-zA-Z0-9]\W    非单词字符:[^\w]匹配范围:.    ...

2018-12-16 23:09:00 72

转载 Python 集合

集合集合与列表差不多,只不过集合中的数据是不会存在重复值例如:列表的数据可以为:list_a=[1,2,3,3,3,4]将list_a转换为集合时,数据就变为:list_a=[1,2,3,4]集合的常用操作:set()函数len()函数add()方法update()方法union()方法pop()方法remove()方法discard()方法intersection()方法int...

2018-12-16 20:11:00 71

转载 Python 类的使用

类的使用文档化函数:在函数的开头写下字符串,它会作为函数的一部分运行存储,这称为文档字符串(常用来描述该函数的信息)。如下:def test(x,y): u"""这是一个Python程序,返回参数x加参数y的值""" return x+ydef test1(): 'this is python program!' return 1...

2018-12-12 23:23:00 95

空空如也

空空如也

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

TA关注的人

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