03 2020 档案

摘要:常用的操作事件:右键点击、页面滑动、表单操作 官方文档 https://selenium-python.readthedocs.io/ 我们定位元素的时候也可以使用这个方法去定位元素: 主要两个操作方法 1.ActionChains 注意,⚠️不会立即执行,调用perform()方法时,队列中事件依 阅读全文
posted @ 2020-03-31 19:04 zhaikunkun 阅读(241) 评论(0) 推荐(0)
摘要:Web控件定位与常见操作: xpath css selenium的点击与输入:click()、send_keys() 1.xpath 缺点:速度慢,因为它是从头到尾一点点遍历到的 优点:万能定位方式 1) /代表子元素,相当于上一个元素的儿子; 可以定位到它的孩子,但是定位不到它的孙子; 比如:$x 阅读全文
posted @ 2020-03-31 18:12 zhaikunkun 阅读(415) 评论(0) 推荐(0)
摘要:1.测试用例编写 用例的关键要素: 1)导入依赖 2)创建driver 3)执行自动化步骤 4)断言 如下图是一个简单的demo: self.driver.maximize_window()最大化窗口页面,一般会存在于setup方法中 如果不添加teardown原来跑完的页面不会进行自动退出的,原页 阅读全文
posted @ 2020-03-31 12:27 zhaikunkun 阅读(229) 评论(0) 推荐(0)
摘要:持续更新。。。 1.括号中的文案写错,比如社团写成社区,最好还是在html页面里定位到元素去粘贴上面的文案,哪怕只有两个字❗️ self.driver.find_element_by_link_text("社团").click() 2.使用隐式等待,直接报错,因为隐式等待这判断这个元素有了,但不会判 阅读全文
posted @ 2020-03-31 11:53 zhaikunkun 阅读(1081) 评论(0) 推荐(0)
摘要:allure是通用的,与语言无关的框架解析器 allure2解析过程: 安装allure2 生成allure测试结果 pytest --alluredir=allure . 展示报告 allure serve allure/ 生成最终版本的报告 allure generate allure/ 使用a 阅读全文
posted @ 2020-03-30 14:53 zhaikunkun 阅读(189) 评论(0) 推荐(0)
摘要:1.allure介绍 2.allure安装 mac安装brew复制下面的命令,终端执行 官网Homebrew /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/instal 阅读全文
posted @ 2020-03-30 14:38 zhaikunkun 阅读(216) 评论(0) 推荐(0)
摘要:selenium的简介 selenium的安装 Driver的配置 1.selenium介绍 selenium支持web浏览器的自动化。它主要由三个工具构成:WebDriver、IDE、Grid 官方网站:https://www.selenium.dev/ Grid是分布式,支持在多个浏览器中操作, 阅读全文
posted @ 2020-03-30 14:22 zhaikunkun 阅读(142) 评论(0) 推荐(0)
摘要:1.再说一边pytest的优点、优点 2.setup_class()的使用 setup_class在类中初始化类时,先执行一次,经常加装饰器这样使用 通常后面在做自动化的时候会用到两级setup_class(启动一个网页)和setup(完成通用的初始化的配置)tesrdown一些case执行结束后, 阅读全文
posted @ 2020-03-29 21:47 zhaikunkun 阅读(3699) 评论(0) 推荐(0)
摘要:1.数据驱动,首先要选择存储数据格式的选择,对比以下数据存储方式 csv的缺点:格式是二维的,只支持简单的数据存储,较复杂的就比较难支持 2.数据驱动的逻辑,数据驱动包括两方面的:一是参数的数据驱动,二是测试用例的数据驱动 测试数据的数据驱动 测试步骤的数据驱动 3. python如何读取yaml, 阅读全文
posted @ 2020-03-29 20:30 zhaikunkun 阅读(5011) 评论(0) 推荐(0)
摘要:1.执行这段代码,一直报错:提示找不到这个文件,一开始以为是我的yaml文件格式不对,但是这个错误明显是因为路径有问题,但是查看路径也没有问题,data.yaml文件就在test_case包下, 最后用控制台运行发现没有问题,可能是文件路径配置错误 解决:将文件路径改为test_case,再次运行, 阅读全文
posted @ 2020-03-29 17:09 zhaikunkun 阅读(1321) 评论(0) 推荐(0)
摘要:实例:对加减乘除法进行编写自动化测试用例 1.首先安装好pytest,其他文章中有讲到 2.创建一个test的project,根据pageobject模式创建一个base_calcu的基础模块,存放加减乘除方法;创建一个Calcu类。如下图: 3.创建test_case project用来存放测试用 阅读全文
posted @ 2020-03-29 10:57 zhaikunkun 阅读(2447) 评论(0) 推荐(0)
摘要:1.pytest数据的参数化 如下图所示例子: 10和a对应,20和b对应是一组 同理,也可以使用list 使用tuple 2. yaml的基本使用 可以使用yaml实现参数化,如下图,yaml实现list,符号是-而不是负号 yaml实现list yaml实现字典 yaml进行嵌套,比如想实现二维 阅读全文
posted @ 2020-03-28 22:29 zhaikunkun 阅读(451) 评论(0) 推荐(0)
摘要:12.fixture带参数传递 场景:测试离不开数据,为了数据灵活,一般数据都是通过参数传的 解决:fixture通过固定参数request传递; 步骤:在fixture中增加@pytest.fixture(params=[1,2,3,'linda'])在方法参数写request 如下图,运行结果: 阅读全文
posted @ 2020-03-28 21:26 zhaikunkun 阅读(1120) 评论(0) 推荐(0)
摘要:7.pytest框架结构——setup,teardown的使用 import pytest类似的setup,teardown同样更灵活 模块级(setup_module/teardown_module)模块始末,全局的(优先级最高) 函数级(setup_function/teardown_funct 阅读全文
posted @ 2020-03-27 21:12 zhaikunkun 阅读(694) 评论(0) 推荐(0)
摘要:1.pytest介绍 pytest是一个非常成熟的全功能的python测试框架 简单灵活,易上手 支持参数化 测试用例的skip和xfail,自动失败重试等处理 能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appium等自动化测试、接口自动化测试(pytest+reques 阅读全文
posted @ 2020-03-27 18:54 zhaikunkun 阅读(1522) 评论(0) 推荐(0)
摘要:一开始设置了默认pytest运行,依然不生效,解决方法如下: 1.修改默认运行的test runner pycharm-preferences-搜索pytest 修改default test runner,点击ok; 2.此时运行pytest的测试用例仍旧没有输出结果 检查 点击-号 修改templ 阅读全文
posted @ 2020-03-26 10:27 zhaikunkun 阅读(4705) 评论(0) 推荐(1)
摘要:1.pip 查找自己需要安装的包 pip官方网站查找地址 pypi.org 另外下载包的时候可以指定版本号、镜像地址(可以加快下载速度) 另外, 下载包的时候注意版本号,与你已经下载的软件是否有版本依赖关系 2.官方学习文档 官方文档:https://docs.python.org/zh-cn/3/ 阅读全文
posted @ 2020-03-24 20:11 zhaikunkun 阅读(173) 评论(0) 推荐(0)
摘要:1.关系型数据库:Mysql、Oracle、sqlserver,Acess..... 特点:SQL(结构化的查询语言) 如下图为关系型数据库图示: 关系型数据库存在的问题:1.存储在硬盘上,读写慢 2.保持ACID(事务原则,事务四项基本原则) 难扩展 如何解决?非关系型数据库 2.非关系型数据库 阅读全文
posted @ 2020-03-24 18:00 zhaikunkun 阅读(235) 评论(0) 推荐(0)
摘要:1.redis简介 2.基本的数据结构 1)string:是二进制安全的,意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象;最大能存储512MB【应用场景:存储图片等】 2)Hash:一个string类型的Key和value的映射表,hash特别适合用于存储对象;存储2 阅读全文
posted @ 2020-03-24 17:41 zhaikunkun 阅读(135) 评论(0) 推荐(0)
摘要:7.多表查询练习 1.给出一个员工的生日、收入、部门名字 2.给出各部门历任领导的记录并附上部门名字 3.计算各个部门的平均工资并排序,给出平均工资、部门名称 答案: 1. 第一题: SELECT a.emp_no,salary,birth_date,dept_name FROM employees 阅读全文
posted @ 2020-03-24 16:24 zhaikunkun 阅读(146) 评论(0) 推荐(0)
摘要:5.更多查询-条件查询、聚合查询 条件查询 比较:大于>,等于=,小于<,不等<> 通配:select*frm where customer_name like '%or%' 范围限定:where pricer between 10 and 20; 子集限定:where country in ('r 阅读全文
posted @ 2020-03-24 16:23 zhaikunkun 阅读(460) 评论(0) 推荐(0)
摘要:1.数据库客户端介绍,navicat和workbench navicat全能,可以连接许多种数据库,是专门做数据库客户端的,但是workbench是专注于mysql的会做的比较细节,如果公司只用mysql的话可以用workench就够了 workbench是官网公司,会紧跟mysql的更新,算是一个 阅读全文
posted @ 2020-03-24 15:59 zhaikunkun 阅读(324) 评论(0) 推荐(0)
摘要:1.L=[1,2,3,11,2,5,3,2,5,3],用一行代码得出[11,1,2,3,5] 考察:集合set的使用 答案: L = [1, 2, 3, 11, 2, 5, 3, 2, 5, 3]print(list(set(L))) 2.L=[1,2,3,5,6],如何得出'12356' 考察:字 阅读全文
posted @ 2020-03-24 15:02 zhaikunkun 阅读(371) 评论(0) 推荐(0)
摘要:1.安装mysql 网上一堆安装教程,linux、mac、windows系统都有,可参考 2.初识SQL 测试日常中用的比较多的是DML,DDL通常是开发来用 DCL主要是赋值权限,允许哪些人访问数据库 TCL数据库事务控制,主要是提交一个事务,回滚一个事务,对事务进行相应处理 2.数据库结构解析 阅读全文
posted @ 2020-03-24 11:53 zhaikunkun 阅读(113) 评论(0) 推荐(0)
摘要:目的:主要是为了练习shell脚本的使用 1.首先在shell中创建一个抽奖名单,wx.txt文件,然后创建抽奖脚本,vim lottery.sh 2.编写脚本 @1.seed=`cat wx.txt`或者seed=$(cat wx.txt) 在shell中执行命令并赋值给变量有两种方式,另外一种方 阅读全文
posted @ 2020-03-22 23:19 zhaikunkun 阅读(487) 评论(0) 推荐(0)
摘要:如何在自己的阿里云服务器上创建自己的测试数据集,数据集地址:https://github.com/datacharmer/test_db 1.在本地电脑中git clone下文件,使用rz命令(如果没有该命令工具root 账号登陆后执行以下命令:yum install -y lrzsz,下载文件,执 阅读全文
posted @ 2020-03-22 22:34 zhaikunkun 阅读(333) 评论(0) 推荐(0)
摘要:mpstat -P ALL 1 %nice优先级内存使用时间 %irp硬中断 %soft软中断 %idle空闲时间 ; %steal、%guest是虚拟机上的参数 不用考虑 什么是iowait? 只有在cpu空闲的时候,去处理IO;当IO不变的情况下,iowait增高了 是因为cpu有更多的时间去处 阅读全文
posted @ 2020-03-22 22:03 zhaikunkun 阅读(242) 评论(0) 推荐(0)
摘要:小白第一次买阿里云服务器,开开心心的打开,修改登录密码,就直接用ssh连接服务器安装docker了(至此埋下了大雷。。。) 首先说连接阿里云服务器,根据文档指示,修改密码,重启服务器,连接成功。开始安装docker; 在刚开始的时候,由于网络的原因,我们在下载的镜像的时候,常常速度是非常慢的。所以如 阅读全文
posted @ 2020-03-21 22:11 zhaikunkun 阅读(3691) 评论(0) 推荐(2)
摘要:从cpu到内存再到硬盘,性能分析常用命令 uptime dmesg vmstat mpstat pidstat iostat free -m top 目标:掌握这些命令共有的参数,比如cpu的信息:包括用户的、核心程序的、cpu空闲时间 宏观角度下的命令 uptime:开机时间,包括负载的东西 mp 阅读全文
posted @ 2020-03-20 17:59 zhaikunkun 阅读(221) 评论(0) 推荐(0)
摘要:三剑客grep、sed、awk、正则总结 正则分为普通正则和扩展正则 普通正则: 1. .*可以匹配多个任意字符 2. \b是匹配单词的,匹配有空格的单词 扩展正则: 1.支持扩展正则 如grep时,要加 -E参数 2. 注意⚠️grep不支持正则中的\d 用[0-9]还有\w 3. grep -P 阅读全文
posted @ 2020-03-20 15:54 zhaikunkun 阅读(491) 评论(0) 推荐(0)
摘要:read命令 read命令是用于从终端或者文件中读取输入的内部命令(类似于python中的input) 读取整行内容 每行末尾的换行符不被读入 1.read a (换行) 123 echo $a 2. . read命令的使用 1.从标准输入读取输入并赋值给变量 read a 2.从标准输入读取多个内 阅读全文
posted @ 2020-03-18 21:03 zhaikunkun 阅读(174) 评论(0) 推荐(0)
摘要:bash编程语法 变量 控制语句 if for while 变量规则 定义与使用变量 your_name="abc" echo $your_name 只读变量 a="123" readonly a 删除变量 unset your_name 注意⚠️不能删除只读变量 但是关掉当前编辑窗口,再打开,只读 阅读全文
posted @ 2020-03-18 20:29 zhaikunkun 阅读(186) 评论(0) 推荐(0)
摘要:sed 流编辑器,一次处理一行内容 命令形式: - h 显示帮助 - n 仅显示script处理后的结果 - e<script> 以选项中指定的script来处理输入的文本文件 - f<script FILE>以选项中指定的script文件来处理输入的文本文件 常用动作 a:新增 sed - e ' 阅读全文
posted @ 2020-03-18 18:13 zhaikunkun 阅读(113) 评论(0) 推荐(0)
摘要:管道、正则、三剑客grep sed awk之间的关系 管道 |:左边命令的输出是右边命令的输入 比如:echo "hello1234"|grep 'hello' 正则 匹配字符串的工具 正则表达式就是记录文本规则的代码 小测试工具推荐:https://tool.oschina.net/regex \ 阅读全文
posted @ 2020-03-18 17:06 zhaikunkun 阅读(111) 评论(0) 推荐(0)
摘要:文件操作 1.mkdir:创建一个新的目录 2.cd 切换目录 3.cp 复制文件或目录 4.ls 列出文件 5.cat 查看文件 6.pwd:显示当前路径 7. rm:移除文件或目录 8. rmdir:删除一个空的目录 9. mv移除文件与目录,或修改文件与目录的名称 文件权限属性介绍: 文件类型 阅读全文
posted @ 2020-03-18 13:41 zhaikunkun 阅读(132) 评论(0) 推荐(0)