一、 Docker 技术简介 1. docker 组成 镜像:相当于python里面类的概念,是静态的,不能直接使用 容器:是通过镜像创建的,相当于实例的概念,是动态的,可以访问的 仓库:存放镜像的地方 docker宿主机:你的docker安装在哪一个机器,那个机器就是宿主机 2. docker 应用场景 web 应用的自动化打包和发布 自动化测试和持续集成、发布 在服务型环境中部署和调整数据库或其他的后台应用 使用docker可以实现开发人员的开发环境、测试人员的测试环境、运维人员的生产环境的一致性 二、 CentOS 下安装 Docker1. 版本检查 CentOS 7 以上版本 操作系统centos-extras 库必须启用。默认情况下,此库是启用的,但是如果已禁用,则必须重新启动它 Docker 要求 CentOS 内核版本高于 3.10 123# 查看系统版本uname -r 2. 安装 Docker1. 安装需要的软件包1yum install -y yum-utils device-mapper-persistent-data lvm2 y ...
一、 安装 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: ...
元素定位操作一、 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 应用程序包的包 ...
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202 ...
一、运算符运算符优先级: 优先级 运算符 顺序 1 小括号 () 2 一元运算符 ++ 、 — 3 数运算符 先 * / 后 + - 4 关系运算符 > 、>=、<、<= 5 相等运算符 ==、!=、 === 、 !== 6 逻辑运算符 先 && 后 \ \ 7 赋值运算符 = 8 逗号运算符 , 1. 算术运算符 运算符 描述 实例 + 加 10 + 20 = 30 - 减 10 - 20 = -10 * 乘 10 * 20 = 200 / 除 10 / 20 = 0.5 % 取余数 9 % 2 = 1 不要使用 浮点数 做判断,因 精度 问题,可能导致两个数 不相等 2. 递增、递减运算符 递增(++)、递减(—) 前置递增(递减):将(++/—) 放在变量的 前 面,先递增或递减,在输出 后置递增(递减):将(++/—) 放在变量的 后 面,先输出,再递增或递减 12345678var age1 = 10;var age2 = 10;// 前置c ...
Python Qt 官方文档 - 控件部分 一、按钮QPushButton 就是常见的按钮 官网介绍 1. 信号:被点击当按钮被点击就会发出 clicked 信号,可以这样指定处理该信号的函数 1button.clicked.connect(handleCalc) 2. 方法:改变文本代码中可以使用 setText 方法来改变按钮文本,比如 1button.setText(text) 3. 方法:禁用、启用所有控件(继承自 QWidget 类)都支持 禁用和启用方法。禁用后,该控件不再处理用户操作 禁用 1button.setEnabled(False) 启用 1button.setEnabled(True) 二、 单行文本框QLineEdit 是只能单行编辑的文本框。 官网介绍 1. 信号:文本被修改当文本框中的内容被键盘编辑,被点击就会发出 textChanged信号,可以这样指定处理该信号的函数 1edit.textChanged.connect(handleTextChange) Qt 在调用这个信号处理函数时,传入的参数就是 文本框目前的内容字符串。 2. 信号: ...
数据类型1.字符串 定义:‘’,”“,‘’‘’‘’ json: json.loads():json 字符串 —-> 字典 json.dumps():字典 —-> json 2.列表与元组 元组 —-> 数据不允许修改 列表 —-> 数据可以更改 3.字典 定义:{‘键’:值} 键是唯一的,值可以不唯一 4.集合(set) 定义:一个无序的不重复的元素序列 可以使用大括号{}或者 set()函数创建集合 创建空集合必须使用set()而不是{} 去重: 123list1 = [1,2,3,3]print(set(list1)) # {1, 2, 3} 交集: 1234set1 = {1,2,3,4}set2 = {4,5,6,7}print(set1 & set2) # {4} 并集: 1234set1 = {1,2,3,4}set2 = {4,5,6,7}print(set1 | set2) # ...
1. jenkins 是什么Jenkins是一个开源的、提供友好操作界面的持续集成(CI)工具,主要用于持续、自动的构建/测试软件项目、监控外部任务的运行(这个比较抽象,暂且写上,不做解释)。 Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行。 通常与版本管理工具(SCM)、构建工具结合使用。常用的版本控制工具有SVN、GIT,构建工具有Maven、Ant、Gradle。 2. CI —- 持续集成CI(Continuous integration,中文意思是持续集成)是一种软件开发时间。 持续集成强调开发人员提交了新代码之后,立刻进行构建、(单元)测试。 根据测试结果,我们可以确定新代码和原有代码能否正确地集成在一起。 3. CD —- 持续交付CD(Continuous Delivery, 中文意思持续交付)是在持续集成的基础上,将集成后的代码部署到更贴近真实运行环境(类生产环境)中。 比如,我们完成单元测试后,可以把代码部署到连接数据库的Staging环境中更多的测试。 如果代码没有问题,可以继续手动部署到生产环境。 二、 Jenk ...
一、 测试架构规划四文件夹: docs : 主要用于存放 和项目相关的文件; logo : 主要用于存放 项目执行的日志; report : 用于存放报告的 原始数据; data : 用于存放 测试数据; 四包文件 : libs : 用于存放 基本的 代码; configs : 用于存放 配置文件; test_case : 用于存放 测试用例; tools : 用于存放 封装的 工具; 二、接口测试用例设计 编号 模块 接口名称 优先级 标题 URL 前置条件 请求方式 请求头 请求参数 预期结果 响应预期结果 实际结果 三、自动化结合excel用例执行配置: 123# configs/confing.pyHOST = 'http://121.41.14.39:8082' 登录: 12345678910111213141516171819202122232425262728# libs/login.pyimport requestsimport hashlibfrom configs.config import HOSTdef get_md5(password ...
一、装饰器 装饰器本质:一个函数,该函数用来处理其他函数,使其他函数在不修改代码前提下增加额外的功能 装饰器的返回值可以是一个函数对象。 使用场景:插入日志,事务处理,缓存,权限校验等 可以抽离出大量与函数功能本身无关的雷同代码,并且可以继续复用 装饰器的使用该测试用例执行,服务器的响应时间是多少,我们怎么实现该代码? 123def foo(): print('执行测试用例') time.sleep(1) 1. 实现12345678910111213# 自动化测试场景import timedef foo(): print('执行测试用例') time.sleep(1) def show_time(func): start_time = time.time() # 开始时间 func() # 函数调用 end_time = time.time() # 结束时间 print('服务器响应时间: ',end_timestart_time)show_time(foo) 2. 使用 - 装饰 ...