自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

铁马冰河入梦来

人生苦短,俺用Python!

  • 博客(178)
  • 资源 (7)
  • 论坛 (1)
  • 收藏
  • 关注

原创 Robotframework+Appium+夜神模拟器环境搭建

Windows下Appium自动化环境搭建一 概述Appium是一个开源测试自动化框架,可用于原生,混合和移动Web应用程序测试。 它使用WebDriver协议驱动iOS,Android应用程序。其具备以下优点:1.可以跨平台同时支持Android、iOS2.支持多种语言,JAVA、Python、PHP、Ruby等等二 环境准备 JDK Ja...

2019-05-24 13:17:15 1977

原创 2020-10-24

1024程序员节,纪念一下

2020-10-24 08:02:54 12

原创 Selenium自动化测试方法封装

#!usr/bin/python# -*- coding: utf-8 -*-import shutilimport testlinkimport win32comfrom selenium import webdriverfrom selenium.common.exceptions import NoSuchElementException, TimeoutExceptionfrom selenium.webdriver.common.by import Byfrom seleniu.

2020-09-24 17:38:41 94

原创 Android自动化代码封装

import unittestimport cv2from selenium.common.exceptions import NoSuchElementException, TimeoutExceptionfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support.wait import WebDriverWaitfrom appium import webdriverfrom selenium.we.

2020-09-24 17:34:14 100

原创 面试基础知识记录

https://blog.csdn.net/yuelai_217/article/details/100210918?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-5.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-5.nonecase.

2020-09-24 15:40:19 35

原创 算法面试题目

1.斐波那契三角形# 斐波那契三角形# [1]# [1, 1, 1]# [1, 1, 2, 1, 1]# [1, 1, 2, 3, 2, 1, 1]# [1, 1, 2, 3, 5, 3, 2, 1, 1]# [1, 1, 2, 3, 5, 8, 5, 3, 2, 1, 1]# [1, 1, 2, 3, 5, 8, 13, 8, 5, 3, 2, 1, 1]def fib(n): if n == 1: return 1 if n == 2:

2020-09-24 15:38:29 48

原创 个人链接保存

书签菜单最近使用的标签Mozilla Firefox帮助和教程自定义 Firefox加入进来关于我们书签工具栏最常访问Dashboard [Jenkins]天慧CRM系统产品开发项目管理平台EXCEL服务器2017 WEB版 -- [李建喜] 已登录到 [topsec]上海-悠悠 - 博客园【铁马冰河入梦来】人生苦短,俺用Python! - CSDN博客TestLink 1.9.17 (Alan Turing)TestL...

2020-09-24 15:25:01 371

原创 单链表--python实现

#!usr/bin/python# -*- coding: utf-8 -*-# 单向链表(单链表)是链表的一种,其特点是链表的链接方向是单向的,对链表的访问要通过顺序读取从头部开始。单链表是一种链式存取的数据# 结构,用一组地址任意的存储单元存放线性表中的数据元素。链表中的数据是以结点来表示的,每个结点的构成:元素(数据元素的映象) + 指针# (指示后继元素存储位置),元素就是存储数据的存储单元,指针就是连接每个结点的地址数据。它的每个节点包含两个域,一个信息域(元素域)# 和一个链接域。这.

2020-09-24 15:20:51 30

转载 Python 垃圾回收机制与缓存机制--实现原理

1.垃圾回收机制一句话总结:引用计数器为主、分代码回收和标记清除为辅1.1 引用计数在Python的C源码中有一个名为refchain的环状双向链表,Python程序中一旦创建对象都会把这个对象添加到refchain这个链表中。也就是说他保存着所有的对象。在refchain中的所有对象内部都有一个ob_refcnt用来保存当前对象的引用计数器,顾名思义就是自己被引用的次数当值被多次引用时候,不会在内存中重复创建数据,而是引用计数器+1 。 当对象被销毁时候同时会让引用计数器-1,如果引用

2020-09-24 11:30:57 47

原创 栈,队列,双端队列的python实现

#!usr/bin/python# -*- coding: utf-8 -*-# 栈的操作# stack() 创建一个新的空栈# push(item) 添加一个新的元素item到栈顶# pop() 弹出栈顶元素# peek() 返回栈顶元素# is_empty() 判断栈是否为空# size() 返回栈的元素个数# 栈的特点:后进先出,装子弹的弹夹,只能从栈顶入栈和出栈class Stack: def __init__(self): self.li = [].

2020-09-23 17:32:14 30

原创 排序算法之快速排序

#!usr/bin/python# -*- coding: utf-8 -*-import sys# sys.setrecursionlimit(1000000) 设置递归深度# 思路:1.选取第一个数,让它归位,即让它前边的数都比它小,后边的数都比它大# 2.归位后,分为前后两部分,分别让前后两部分的每一个数进行归位,进行递归即可def pational(li, left, right): temp = li[left] #待归位元素 while left < rig.

2020-09-23 17:11:00 36

转载 SSH与Telnet的区别

最近登录主机的时候,经常碰到了telnet连不上但ssh可以连上,ssh连不上但telnet可以连上,今天花了点时间把他们两者之间的异同点进行了对比整理,归纳如下:1,本质:telnet是明码传输,ssh是加密传输。telnet通过TCP/IP协议来访问远程计算机来控制你的设备,其传输的数据和口令是明文形式的。这样攻击者就很容易得到你的口令和数据。其方式也很简单,他以中间人的身份冒充你的设备截取你的数据,然后再把假数据再传给你的远程设备,从而达到攻击的目的。SSH是替代Telnet和其他远程控制台管...

2020-09-21 14:48:47 58

转载 pytest 使用总结

1.1.测试用例的识别规则1)pytest框架的默认识别规则测试文件:必须为test_*.py或*_test.py 测试类:必须为Test* 测试方法或函数:必须为test_*2)修改pytest的默认执行规则在测试框架的根目录下新建pytest.ini文件,加入新的用例识别规则。假如我们要定义新的pytest用例识别的规则如下:测试文件:必须为test_*.py或weeds_*.py 测试类:必须为Test*或Weeds* 测试方法或函数:必须为test_*或weeds_*

2020-09-11 15:32:26 93

原创 排序算法lowB三人组--冒泡排序-选择排序-插入排序

1.冒泡排序#!usr/bin/python# -*- coding: utf-8 -*-# 冒泡排序# 思路:从第一个数开始,与其后边元素比较,如果后边数比前边数小,就交换位置,一趟排序后最值元素到了尾部# 外层循环表示需要比较的趟数,趟数是n-1次,每一趟可以确定一个元素# 内层循环表示一趟比较需要比较多少次,第一次排序后,最末尾元素就成最大或最小元素了,第二次比较,最后两个元素就成最大或最小元素了# 此后再比较,有序的不需要再进行比较,所以比较次数跟随i的变大而减小为n-1-i#

2020-09-10 14:18:25 96

转载 MySQL对group by原理和理解

写在前面的话:用了好久group by,今天早上一觉醒来,突然感觉group by好陌生,总有个筋别不过来,为什么不能够select * from Table group by id,为什么一定不能是*,而是某一个列或者某个列的聚合函数,group by 多个字段可以怎么去很好的理解呢?不过最后还是转过来了,简单写写吧,大牛们直接略过吧。=正文开始===先来看下表1,表名为test:执行如下SQL语句:SELECT name FROM testGROUP BY name1 2表

2020-09-09 13:33:14 92

原创 jmeter学习6--参数化

jmeter的test plan中,支持如下4种参数化方式:函数助手:_CSVReadCSV Data Set Config:CSV数据控件User Defined Variables:用户定义的变量User Variables:用户参数1.函数助手:_CSVReadCSV file to get values from | *alias:CSV文件取值路径,即这里需要写入之前的需要参数化的参数的文件路径CSV文件列号| next|*alias:文件起始列号:CSV文件列号是

2020-09-03 13:48:24 116

原创 jmeter学习5--后置处理器,提取器

后置处理器中有各种提取器,用于从请求结果中提取出来数据,提取出的数据可以传递到下一个请求,进行响应数据传递。1.json提取器Match No,1代表第一个,0代表随机,-1代表全部提取器要放到http请求下面,提取出的数据可以在调试取样器中查看可以在响应中进行调试jsonpathJSON Path表达式 JSON Path 描述 $ 表示根元素 @ 表示当前节点 . 表示子节点 .. 选择所有符合条件的...

2020-09-02 17:23:34 122

原创 jmeter学习4--http请求content-type与参数

content-type:在Request Headers里,告诉服务器我们发送的请求信息是哪种格式的content-type 常见的格式有如下三种1.content-type:application/x-www-form-urlencoded默认格式:如果不指定content-type,默认使用此格式。参数格式:key1=value1&key2=value2jmeter中请求添加该类参数时可以有两种方法添加:1.以参数形式添加2.一消息体数据添加2 co..

2020-09-02 15:33:48 102

原创 jmeter使用学习3-连接数据库

1.创建线程组,创建JDBC Connection ConfigurationJDBC Connection Configuration是连接数据库的配置,需要先进行创建,填写连接数据库信息数据库url格式:jdbc:mysql://数据库地址:端口号/数据库名称jdbc驱动类:需要先下载,然后放到jmeter,lib/ext 目录下,否则会报如下错误JDBC Request :Cannot load JDBC driver class https://dev.mysql.co.

2020-09-01 10:24:07 100

转载 SQL 连接(内连接,外连接)

内连接现在有两张表,学生表student1,成绩表SC1,两张表的数据如下现在要对两张表做连接查询,连接一般需要写条件,where 或者 on 后面 ,select * from student,SC where student.sid=SC.sidfrom后面直接写两个表名,这样写等价于内连接 如果不写where条件,相当于笛卡尔积。带有 where 条件 相当于内连接A(inner,left,right) join B on A.1=B.1 ...

2020-08-27 10:30:41 190

原创 Python os模块与sys模块常用方法汇总

#!usr/bin/python# -*- coding: utf-8 -*-import randoma=1b=10step=10sequence=[1,2,3,4,5]random.random() #生成一个 0-1 之间的随机浮点数;random.uniform(a, b) #生成[a,b]之间的浮点数;random.randint(a, b) .

2020-08-24 10:37:24 238

原创 二叉树排序

#!usr/bin/python# -*- coding: utf-8 -*-class Node: def __init__(self, value=None, left=None, right=None): self.value = value self.left = left self.right = rightdef preTraverse(root): ''' 前序遍历,根左右 ''' if roo.

2020-08-12 16:06:52 327

原创 python 常用面试题目(编程)

#!usr/bin/python# -*- coding: utf-8 -*-# 字符串去重后排序from functools import reduces = "sheckjffs"str_list = list(set(s))str_list.sort()s = "".join(str_list)print(s)# 列表扩展a = [2, 4, 7, 1]b = [4, 6, 8, 3]a.extend(b)# 冒泡排序def bubbleSort(arr): .

2020-08-12 14:47:30 354

转载 一文快速理解Session,Cookie,Token的区别

一. 为什么需要Cookie?HTTP是一种无状态的协议,客户端与服务器建立连接并传输数据,数据传输完成后,连接就会关闭。Cookie是解决HTTP无状态性的有效手段,服务器可以设置或读取Cookie中所包含的信息。当用户登录后,服务器会发送包含登录凭据的Cookie到用户浏览器客户端,而浏览器对该Cookie进行某种形式的存储(内存或硬盘)。用户再次访问该网站时,浏览器会发送该Cookie到服务器,服务器对该凭据进行验证,合法时使用户不必输入用户名和密码就可以直接登录。Cookie的类型Coo

2020-08-04 17:17:28 405

原创 面试常用(python测试)

1. XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言。 XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力2.Appium工作原理(Android)client端也就是我们 test script是我们的webdriver测试脚本。 中间是appium服务端 appium服务端接收到webdriver客户端的标准rest,解析请求内容为响应指令。(rest:表述性状态转移:是一组架构约束条件和原则) 转发...

2020-07-31 11:28:26 521

原创 Pyqt5--layoutx

#!usr/bin/python# -*- coding: utf-8 -*-from PyQt5.Qt import *import sysapp = QApplication(sys.argv)window = QWidget()window.resize(500, 500)# 1.创建布局# layout = QBoxLayout(QBoxLayout.LeftToRight)# layout = QHBoxLayout()layout = QVBoxLayout()labe.

2020-07-24 16:11:01 443

原创 Mysql基础笔记

1.连接数据库,退出数据库cd 到mysql安装路径E:\mysql\mysql-8.0.18-winx64\bin 目录下,mysql -uroot -p 输入root密码进入eixt, quit, \q 退出数据库2.创建数据库,删除数据库,修改数据库编码 ,查看数据库(crud),使用数据库create database 数据库名称 charset utf8; create dateabase student;创建学生数据库drop database 数据库名称; drop.

2020-07-23 16:20:16 411

原创 Pyqt5--QCommandLinkButton与QToolButton

#!usr/bin/python# -*- coding: utf-8 -*-from PyQt5.Qt import *import sysapp = QApplication(sys.argv)window = QWidget()window.resize(500, 500)com_btn =QCommandLinkButton("命令连接按钮","描述",window)com_btn.setText("命令连接按钮")com_btn.setDescription("描述11").

2020-07-21 11:34:56 484

原创 PyQt5--QPushButton学习

#!usr/bin/python# -*- coding: utf-8 -*-from PyQt5.Qt import *import sysapp = QApplication(sys.argv)window = QWidget()window.resize(500, 500)# 1.构造方法四个,分别是不带参数的,带父控件的,带提示文本,父控件的,带图标,提示文本,父控件的# root = QFileInfo(__file__).absolutePath()icon = QIcon.

2020-07-20 17:21:15 414

原创 Pyqt5--QQAbstractButton

#!usr/bin/python# -*- coding: utf-8 -*-#1. QAbstractButton button子类:QToolButton,QCheckBox,QRadioButton,QPushButton,QCommandLinkButton# 抽象类需要继承并重写paintEvent方法from PyQt5.Qt import *import sysapp = QApplication(sys.argv)# 自定义buttonclass Btn(QAbstr.

2020-07-20 13:04:18 489

原创 Pyqt5--Qobject

#!usr/bin/python# -*- coding: utf-8 -*-from PyQt5 import QtCorefrom PyQt5.QtCore import QObject, QEventfrom PyQt5.QtWidgets import *import sysapp = QApplication(sys.argv)class window(QWidget): def __init__(self): super().__init__() .

2020-07-19 15:14:52 468

原创 Pyqt5学习--Qwidget

#!usr/bin/python# -*- coding: utf-8 -*-from PyQt5 import QtGui, QtCorefrom PyQt5.Qt import * # 刚开始学习可以这样一下导入import sys# 1,创建appapp = QApplication(sys.argv)# 创建控件class Window(QWidget): def __init__(self): super(Window, self).__init_.

2020-07-19 15:12:18 530

原创 java多线程

import org.codehaus.groovy.control.ProcessingUnit;import java.util.Map;/** * @description: * @author: ljx * @time: 2020/7/13 10:25 */public class ThreadDemo { public static void main(String[] args) throws InterruptedException {// test.

2020-07-18 14:39:28 454

原创 java中的IO流

流分字节流与字符流import org.omg.PortableInterceptor.SYSTEM_EXCEPTION;import java.io.*;import java.util.Properties;import java.util.Set;/** * @description: * @author: ljx * @time: 2020/7/13 16:35 */public class IoLearn { public static void main(..

2020-07-18 14:37:08 484

原创 Python requests

1.requestrequests.request(method, url, **kwargs) requests.get(url, params=None, **kwargs) requests.options(url, **kwargs) requests.head(url, **kwargs) requests.post(url, data=None, json=None, **kwargs) requests.put(url, data=None, **kwargs) request

2020-07-12 15:02:32 528

原创 Pyqt5实现计时器功能

1.利用计时器模块QTimer# 初始化一个定时器self.timer = QTimer(self)# 将定时器超时信号与槽函数showTime()连接self.timer.timeout.connect(self.showTime)self.timer.start(1000)启动timerself.timer.stop() 停止timer#!usr/bin/python# -*- coding: utf-8 -*-from PyQt5.QtWidgets import Q

2020-07-12 13:49:15 1003

原创 RestAssured接口自动化框架学习

1.简介RestAssured是一个java接口自动化测试框架,可以发送POST,GET,PUT,DELETE,OPTIONS,PATCH和HEAD请求,并且可以用来验证和校对这些请求的响应信息。从名称上来看,它可以很好的支对restful风格的接口进行测试。github地址:https://github.com/rest-assured/rest-assuredRest Assured是在HTTP Builder(一个软件项目)基础上开发出的一个工具,这个工具能够采用Java DSL(领域特

2020-07-05 17:28:45 662

原创 Python logging只写入到文件,不显示在控制台

关于logging模块的详细使用,可以参考博客python logging 替代print 输出内容到控制台和重定向到文件logging中有几个模块:Logger,Handler,Formatter,FilterLogger 对象提供应用程序可直接使用的接口,Handler 发送日志到适当的目的地,Filter 提供了过滤日志信息的方法,Formatter 指定日志显示格式。其中Logger比较不好理解Logger是一个树形层级结构,输出信息...

2020-06-29 10:39:46 1196

原创 java--接口测试框架httpclient

1.使用IDEA创建maven项目打开IDEA后点击settings ,然后在VM Options内添加-DarchetypeCatalog=internal 运行参数 File--new--project,选择moven 填写项目名称 配置maven,点击finish完成 等待下载完成,如果下载慢可以更换成阿里源镜像添加阿里源,找到 上图setting.xml中的 <mirrors> </mirrors>标签,在标签内部 添加内容如下: <mi...

2020-06-24 16:32:23 695

转载 java集合总结

转载请注明出处:Java集合中List,Set以及Map等集合体系详解(史上最全)概述: List , Set, Map都是接口,前两个继承至Collection接口,Map为独立接口 Set下有HashSet,LinkedHashSet,TreeSet List下有ArrayList,Vector,LinkedList Map下有Hashtable,LinkedHashMap,HashMap,TreeMap Collection接口下还有个Queue接口,...

2020-06-22 11:17:08 626

java.rar黑马java基础笔记

黑马程序员java笔记,看完就可以进行java程序编写,速度下载。基础全覆盖

2020-07-21

android面试宝典

面试必备宝库,自己获取,看完必能找到好工作,快来下载吧

2019-03-13

python面试题目2

python面试题目2代,最新最火热的技术必须掌握,涨工资必备

2018-08-28

Python面试题

最新面试题目汇总,教你面试技巧,轻松面试通过必考必看内容

2018-08-28

爬虫最新总结

最新爬虫总结,非常全面,非常简练,学完可以自己写一个了

2018-08-28

Python进阶攻略

学习Python资源,总结学习资源,非常详细的资源,各个模块的基础都有

2018-08-24

python面试题目

python面试题,面试专用的好面试题目python面试题,面试专用的好面试题目

2018-08-22

CSDN博客目录栏为啥放到右边了?有没有不习惯的

发表于 2020-04-19 最后回复 2020-04-29

空空如也

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

TA关注的人 TA的粉丝

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