摘要:
localforage 是一个使用 Web 存储 API (例如 IndexedDB、WebSQL 或 localStorage)来提供简单的异步数据存储的 JavaScript 库。localforage 可以用来在客户端存储数据,比如本地缓存。 1.localforage 如何设置过期时间 可以 阅读全文
摘要:
# 1. 配置Java SDK与Android SDK # 2. 连接真机 使用USB连接真机 将USB偏好设置为MIDI 测试设备连接情况: adb devices -l # 3. 配置Appium与appium-inspector安装 安装node:brew install node 下载并安装 阅读全文
摘要:
# 1. 安装JAvA 8 这个网上很多, java -version 用这个命令看自己是否安装了, # 2. Android Studio安装及配置 A. 在网址https://developer.android.google.cn/studio/ 下载符合你对操作系统的安装包。 B. 进入安装: 阅读全文
摘要:
# 一.Appium框架组成 ![](https://img2023.cnblogs.com/blog/1854922/202306/1854922-20230617141703277-2051093715.png) Appium框架组成是: 自动化脚本即client端(通过Java编写的代码,也可 阅读全文
摘要:
# 原因 是因为这个数据库的连接建立太久了,会自动断开,这个时候我们需要重新建立连接,否则访问接口就会出现异常报错了。 导致这个错误的原因是通过pymysql连接MySQL,没有关闭连接的操作,所以短时间内不会出问题,长时间保持这个连接会出现连接混乱。虽然看着自己的代码没错,还是会报 pymysql 阅读全文
摘要:
# 1. 安装 ``` pip install flask_httpauth pip install itsdangerous ``` # 2. 创建对象 ``` from flask import Flask, g, jsonify from flask_httpauth import HTTPB 阅读全文
摘要:
# 实战案例 为了更好理解,上述所有示例的IO情况都是以 asyncio.sleep 为例,而真实的项目开发中会用到很多IO的情况。 ## 异步Redis 当通过python去操作redis时,链接、设置值、获取值 这些都涉及网络IO请求,使用asycio异步的方式可以在IO等待时去做一些其他任务, 阅读全文
摘要:
hashlib模块 import hashlib # 不加盐 md5 = hashlib.md5() # 创建一个md5算法的对象 md5.update('123456'.encode('utf-8')) print(md5.hexdigest()) # 这个值永远不会变,容易被人暴力破解,要加盐 阅读全文
摘要:
https://www.cnblogs.com/guyuyun/p/14970592.html # 一、RabbitMQ简介 ## 1. MQ简介 MQ(Message Queue,消息队列),是一个在消息传输过程中保存消息的容器,多用在分布式系统之间进行通信。 MQ优势: 应用解耦:提高系统容错性 阅读全文
摘要:
# vuex介绍 Vuex是什么?为什么要用它? Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。可以想象为一个“前端数据库”(数据仓库),让其在各个页面上实现数据的共享包括状态,并且可操作 vuex官方解释 Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式 + 库。它 阅读全文
摘要:
# 1.要求 在做一些用户信息相关的功能时,经常用到表单项去收集数据,其中有些属性必须填写, ![](https://img2023.cnblogs.com/blog/1854922/202301/1854922-20230129134030982-440101386.png) # 2.实现方法 在 阅读全文
摘要:
当QA成为大型项目的QA owner时,那么测试方案就成为QA整个项目流程中的重要的工作指南。 那测试方案中,要写的内容如下: 项目背景&文档 测试排期及人力投入 线下测试方案 测试环境 测试用例 测试方法 预发及线上测试方案 预发&生产环境的上线顺序 生产环境的回滚操作 预发&生产环境的验证 现场 阅读全文
摘要:
Mac 备忘录 双开 设置方法: 选中备忘录-顶栏-窗口-浮动所选备忘录 注意:处于同一个备忘录时,两边会一起变化, 阅读全文
Appium报错Original error: Could not proxy command to the remote server. Original error: socket hang up
摘要:
网上说的原因1: > appium连接手机做自动化,本来做的好好的。突然某一次开始一直报错这个socket hang up 我看网上有说uiautomator2的,又说uiautomator耗电严重,被手机自动杀的。都没解决我的问题 最后搞懂了我的起因: 上一次的调试链接没有主动断开,也即没有dri 阅读全文
摘要:
python分布式进程 分布式主从设计,客户端服务端设计,生产者消费者设计,这几种有什么区别? 总的来讲,客户端服务端应该是整个系统的架构, 生产者和消费者是服务架构的架构的一种 分布式也是服务端架构设计的一种,所以这样看分布式是生产者消费者架构下的一种,但是用了生产者和消费者不一定是分布式, 生产 阅读全文
摘要:
RangeError: Maximum call stack size exceeded vue 项目运行报错:RangeError: Maximum call stack size exceeded ; 意思是 堆栈溢出(内存溢出) ![](https://img2023.cnblogs.com/ 阅读全文
摘要:
# 背景 在进行表格操作时,使用element-ui 表格控件时加入复选框后默认是无法进行翻页记忆的。 # 翻页记忆 在进行复选框翻页记忆操作时需要在表格与复选框中分别添加,这个两个参数在翻页复选中必须添加,否则无效。 ``` :row-key="getRowKeys" // 获取每行的信息 :re 阅读全文
摘要:
# 怎么查看mysql的最大连接数 show variables like '%max_connection%'; 查看最大连接数 set global max_connections=1000; 重新设置最大连接数 # 怎么查看mysql的已经连接数 mysql> show status like 阅读全文
摘要:
# 事先安装好java-JDK, 使用java -version查看版本 # 安装jmeter ## 官网下载 下载地址:http://jmeter.apache.org/download_jmeter.cgi ## 上传服务器 使用rz命令上传 ## 执行解压 unzip apache-jmete 阅读全文
摘要:
find命令详解 # 1. find命令作用 find命令用来在指定目录下查找文件。 # 2. find命令选项基本格式 find 目录 -选项 动作[-print -exec -ok ...] # 3. 常用选项: ``` -a:and 必须满足两个条件才显示 -o:or 只要满足一个条件就显示 阅读全文
摘要:
OpenAI OpenAI,在美国成立的人工智能研究公司。 公司核心宗旨在于“实现安全的通用人工智能(AGI)”,使其有益于人类。 2015年,OpenAI由马斯克、美国创业孵化器Y Combinator总裁阿尔特曼、全球在线支付平台PayPal联合创始人彼得·蒂尔等硅谷科技大亨创立。 ChatGP 阅读全文
摘要:
# 1.默认排序很简单 在el-table标签中加入默认属性 :default-sort ="{prop:'date',order:'descending'}" 然后在单独一列中 ``` ``` # 2.后台排序 需要根据需要给后台发送信息,让后台做一些操作 首先在el-table标签中加入事件监听 阅读全文
摘要:
代码: ``` {{ props.row.name }} {{ props.row.shop }} {{ props.row.id }} {{ props.row.shopId }} {{ props.row.category }} {{ props.row.address }} {{ props. 阅读全文
摘要:
一次 HTTP 请求就需要一次 TCP 连接吗? 结论:短连接需要,长连接不需要。 目录 一次 HTTP 请求就需要一次 TCP 连接吗? TCP 的连接与断开 可以一次性发送多个 HTTP 请求吗? 浏览器对同一 host 的 TCP 连接上限 TCP 的连接与断开 现代浏览器在与服务器建立了一个 阅读全文
摘要:
http协议与tcp协议区别 1、性质不同: http是一个简单的请求-响应协议。TCP是一种面向连接的、可靠的、基于字节流的传输层通信协议。 2、连接不同: TCP连接到不同但互连的计算机通信网络的主计算机中的成对进程之间依靠TCP提供可靠的通信服务。http通常运行在TCP之上。指定了客户端可能 阅读全文
摘要:
程序员难免要经常画流程图,状态图,时序图等。以前经常用 visio 画,经常为矩形画多大,摆放在哪等问题费脑筋。有时候修改文字后,为了较好的显示效果不得不再去修改图形。今天介绍的工具是如何使用 PlantUML 的插件画流程图,状态图,时序图等。这是一种程序员看了就会爱上的画图方式:自然,高效。 什 阅读全文
摘要:
自动化测试或者测试开发专题的能力分层。 这篇文章结合我自己的工作经历,谈谈自动化测试的成熟度模型,仅代表个人看法。 重新认识自动化测试 我从事软件测试工作以来,第一次知道自动化是15年年底,听大佬说QTP可以录制脚本然后自动化回放,测试效率很高,当时心向往之。不过当时技术比较菜,而且对工作也比较迷茫 阅读全文
摘要:
首先下载依赖 yum install mesa-libOSMesa-devel gnu-free-sans-fonts wqy-zenhei-fonts 然后下载安装chrome yum install https://dl.google.com/linux/direct/google-chrome 阅读全文
摘要:
关闭是用的driver.quit(),而不是driver.close()。这两个区别如下: close只会关闭当前窗口 quit会推出驱动别切关闭所关联的所有窗口 close方法是关闭当前窗口。(当前窗口的意思就是表示driver现在正在操作的窗口)如果当前窗口只有一个tab,那么这个close方法 阅读全文
摘要:
Supervisor(http://supervisord.org/ )是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程 阅读全文
摘要:
du -ahx /export | sort -rh | head -10 du -ahx / | sort -rh | head -100 du -ahx /root/.jenkins/jobs/qinghotel-pms-api-test | sort -rh | head -10 /root/ 阅读全文
摘要:
有一些专业的it提供商,为什么企业还是不用他们?比如尘封做crm的,但是不能和我们的业务不能紧密结合, 阅读全文
摘要:
el-table基础上如何实现表格上下拖拽排序 element ui 表格没有自带的拖拽排序的功能,只能借助第三方插件Sortablejs来实现。 https://www.itxst.com/sortablejs/neuinffi.html 实现步骤: 1.安装Sortable.js ``` npm 阅读全文
摘要:
我觉得好奇心加坚持下去的毅力 我其实见过很多从音乐家,和物理学家,转行搞开发的,做的也很好, 其实优秀的程序员可能来自任何地方,这跟大学学位,专业选没选计算机工程无关, 除非是搞芯片或者其他非常底层的技术,否则真不一定非要科班出身, 高级的程序语言真的不难掌握, 我也是,虽然选修过相关课程,但从来没 阅读全文
摘要:
# 前言 进程和线程,有很多地方非常类似,包括使用的方法也很多相同的, 所以我决定放到一起对比学习, 这一篇,专门对比: 进程冲突和锁, 线程冲突和锁 # 线程冲突 ``` from threading import Thread, Lock import time, os lock = Lock( 阅读全文
摘要:
导语:rabbitmq是实现了高级消息队列协议(AMQP)的开源消息代理软件,安装时可选web可视化插件,依赖对安装版本影响很大,本次使用版本erlang25.0+rabbitmqv3.10.5。 # 安装环境依赖: ``` yum install -y make gcc gcc-c++ m4 op 阅读全文
摘要:
# mysql格式化时间 SELECT DATE_FORMAT(NOW(),'%Y-%m-%d %H:%i:%s') # IF表达式 ``` IF(expr1,expr2,expr3); 如果expr1为TRUE,则IF()返回值为expr2,否则返回值为expr3 update salary se 阅读全文
摘要:
# 前言 进程和线程,有很多地方非常类似,包括使用的方法也很多相同的, 所以我决定放到一起对比学习, 这一篇,专门对比: 进程通信 线程通信 # 进程间通信 多线程:共享变量很简单,直接定义全局 global 变量即可 多进程:全局变量在多个进程中不共享,进程之间的数据是独立的,默认情况下互不影响。 阅读全文
摘要:
第一种方法: 要让mysql查询区分大小写,可以: select * from some_table where binary str='abc' select * from some_table where binary str='ABC' 第二方法: 在建表时时候加以标识 create tabl 阅读全文
摘要:
def get_excel_data(self): print(' 正在批量读取测试用例数据 ') sheetNames = self.opExcel.get_sheet_names() print("获取所有的sheet页的名字:{}".format(sheetNames)) testData = 阅读全文