Linux 常用命令一、 基本命令1. 关机
立刻关机
shutdown -h now
5 分钟后关机
shutdown -h 5
立刻关机
poweroff
2. 重启
立刻重启
shutdown -r now
5 分钟后重启
shutdown -r 5
立刻重启
reroot
3. 帮助命令
—help 命令
shutdown --help
ifconfig --help : 查看网卡信息
man 命令
man shutdown : 打开命令说明书之后,使用按键 q 退出
二、 目录操作命令1. 目录切换 cd
cd / : 切换到根目录
cd /usr : 切换到根目录下的 usr 目录
cd ../ : 切换到上一级目录 或者 cd ..
cd ~ :切换到 home 目录
cd - : 切换到上次访问的目录
2. 目录查看 ls[-al]
ls : 查看当前目录下的所有目录和文件
ls -a : 查看当前目录下的所有目录和文件(包括隐藏的文件)
ls -l 或 ll :列表查看当前目录下的所有目录和文件(列表查看,显示更多信息)
ls ...
镜像:相当于 python 里面类的概念,是静态的,不能直接使用容器:是通过镜像创建的,相当于实例的概念,是动态的,可以访问的仓库:存放镜像的地方docker宿主机:你的 docker 安装在哪一个机器,那个机器就是宿主机
一、 CentOS 下安装 Docker1.查看服务器版本内核通过 以下命令查看服务器的内核版本,确保你的系统版本支持 Docker
只查看版本号查看详细信息查看内核及版本号1uname -r1uname -a1uname -srm
2.更新 yum 包1yum update -y
3. 清除原有 Docker123456yum remove docker \ docker-client \ docker-client-latest \ docker-common docker-latest \ docker-latest-logrotate \ docker-logrotate docker-engine
4.安装依赖包123yum install -y dnf-utils \ device-mapper-persiste ...
一、 安装 node-exporter1.下载 node-exporter1docker pull prom/node-exporter
2.创建容器1docker run -id --name=exporter -p 9100:9100 prom/node-exporter
3.连接页面查看是否可以访问1http://ip 地址:9101/metrics
二、Prometheus 安装及配置1. 设置配置文件123mkdir /home/prometheuscd /home/prometheusvim prometheus.yml
下边的地址为安装 node_exporter 的地址,如果监控其他服务器,需要将 localhost 改为其他服务器的 ip 地址, 端口号为 node_exporter 的映射端口号
12345678910111213141516global: scrape_interval: 60s evaluation_interval: 60sscrape_configs: - job_name: prometheus static_configs: ...
基本数据类型和变量1. 数值类型1.1 整数(int)
整数跟我们平常认识的整数一样,包括正整数、负整数和零,是没有小数点的数字
Python 可以处理任意大小的整数,例如:1,100,-8080,0,等等
1234print(1 + 2) # 3print(1 - 2) # -1print(1 * 2) # 2print(1 / 2) # 0.5
1.2 浮点型(float)
print(2/6): 小数点后默认只保留 16 位小数0.3333333333333333
使用round()函数可以指定输出有效位数(四舍五入)print(round(2/6,3))—-> 0.333
123print(0.55+0.41) # 0.96print(0.55+0.4) # 0.9500000000000001print(0.55*0.411) # 0.9610000000000001
因为计算机对浮点数的表达本身是 不精确 的。保存在计算机中的是二进制数,二进制对有些数字不能准确表达,只能非常接近这个数。
所以我们在对浮点数做运算和比较大小的时候要小心
1.3 算术 ...
方法封装123456789101112131415import yamlclass YamlHandler: def __init__(self,file): self.file = file def read_yaml(self,encoding='utf-8'): """读取yaml数据""" with open(self.file, encoding=encoding) as f: return yaml.load(f.read(), Loader=yaml.FullLoader) def write_yaml(self, data, encoding='utf-8'): """向yaml文件写入数据""" with open(self.file, encoding=encoding, mode='w ...
Appium 环境搭建一、 appium1. appium 介绍appium 是一个自动化测试开源工具,支持 iOS 平台和 Android 平台上的原生应用,web 应用和混合应用。
原生应用 : 指那些用 iOS 或者 Android SDK 写的应用( Application 简称 app)。
web 应用 : 指使用移动浏览器访问的应用( appium 支持 iOS 上的 Safari 和 Android 上的 Chrome)。
混合应用 : 指原生代码封装网页视图——原生代码和 web 内容交互。
appium 是一个跨平台的工具:它允许测试人员在不同的平台( iOS,Android)使用同一套 API 来写自动化测试脚本,这样大大增加了 iOS 和 Android 测试套件间代码的复用性。
客户端、服务器架构
appium 的核心是一个 web 服务器
他接受来自客户端的连接,监听命令并在移动应用上执行,答复 http 响应来描述执行结果
session
自动化始终在一个会话中执行,客户端会给服务器发送请求
请求中包含一个被称作预期能力的 json 对象,这时候服 ...
元素定位操作一、 Appium 脚本架构进行 Appium 自动化测试之前,需启动 Appium 及被测对象,启动了 Appium 客户端后,利用编程工具执行脚本时, Appium 才能将脚本与被测设备建立联接,从而实现自动化测试。
如果不启动客户端,则不能使用 WebDriver。
脚本中需首先导入 WebDriver,然后配置 Server,告诉 Appium 测试环境。
使用 Desired_caps 函数进行设备联接信息。设备连接参数主要有以下常用参数
desired_caps={}:设备参数信息,声明为一个字典
desired_caps['platformName']:应用平台的类型,通常为 Android 或 IOS
desired_caps['platformVersion']:被测设备系统版本
desired_caps['deviceName']:设备名称,通过 adb devices 查看
desired_caps['appPackage']: Android 应用程序包的包名
desired_caps ...
Appium 手机及元素操作一、 按键模拟返回桌面
123driver.keyevent(3) # 3 对应 home 键time.sleep(3)
调节音量
1234driver.keyevent(24)time.sleep(3)driver.keyevent(25)time.sleep(3)
长按 home 键
1driver.long_press_keycode(3)
按键
说明
编号
KEYCODE_CALL
拨号键
5
KEYCODE_ENDCALL
挂机键
6
KEYCODE_HOME
按键 Home
3
KEYCODE_MENU
菜单键
82
KEYCODE_BACK
返回键
4
KEYCODE_SEARCH
搜索键
84
KEYCODE_CAMERA
拍照键
27
KEYCODE_FOCUS
拍照对焦键
80
KEYCODE_FOWER
电源键
26
KEYCODE_NTIFICATION
通知键
83
KEYCODE_MUTE
话筒静音键
91
KEYCODE_VOLUME_MUTE
扬声器静音键
164
...
appium 自动化项目架构一、 项目结构
整体的编写逻辑:
1、先设计功能测试用例
2、然后分析这个用例,用到了那些页面,哪些元素,封装在 pages
3、将功能测试用例翻译成代码
四包文件 :
libs : 用于存放 基本的 代码;
configs : 用于存放 配置文件;
test_case : 用于存放 测试用例;
tools : 用于存放 封装的 工具
四文件夹:
docs : 主要用于存放 和项目相关的文件;
logo : 主要用于存放 项目执行的日志;
report : 用于存放报告的 原始数据;
data : 用于存放 测试数据;
当 APP 自动化有多条测试用例的时候,我们很难保证上一条 case 的结束页面,恰好是下一个 case 的开始页面所以,设计 app 自动化用例的时候,保证每一条 case,都从首页开始,那么,也就要求我们,每一条 case 的开始,都要从 首页 写起,每一条 case 的结束,都要想办法回到 首页
二、 项目内容1. configs项目配置 —- settings.py
12345678910desire_caps ...
Seleniumy 元素定位Chrome 浏览器元素定位插件 — Ranorex Selocity
地址 : https://chrome.google.com/webstore/detail/ranorex-selocity/ocgghcnnjekfpbmafindjmijdpopafoe
一、 webUI 自动化1. 什么是 UI 自动化测试
通过代码来模拟人的手工操作,执行测试内容
自动化是为了代替重复的手工操作,提高测试效率,不是为了装 x
2. UI 自动化的价值
回归速度的对比,以前进行全量回归测试需要 x 天,现在有没有减少
负责功能测试的同事,是不是有更多的时间测试新需求了
自动化测试不是为了发现 bug,而是为手工测试节省回归时间
3. UI 自动化原理 selenium 与 webdriver
selenium 是一个用于 web 测试的工具,测试运行在浏览器当中
webdriver 对浏览器原生的 api 进行封装,使用这套 api 可以操作浏览器的操作页面元素、截屏等
我们使用 selenium 进行自动化,主要涉及三个方面:
测试脚本,就是你我写的代 ...













