Pom设计模式
Pom设计模式自动化测试模型自动化测试模型概念自动化测试模型可以看作自动化测试框架与工具设计的思想。自动化测试不仅仅是单纯写脚本运行就可以了,还需要考虑从到如何使脚本运行效率提高,代码复用,参数化等问题。自动化测试模型分为四大类:线性模型,模块化驱动测试,数据驱动,关键字驱动。
线性测试概念:线性脚本中每个脚本都相互独立,且不会产生其他依赖与调用,其实就是简单模拟用户某个操作流程的脚本。
123456789from selenium import webdriverfrom time import sleepdriver = webdriver.Chrome()driver.get("https://www.baidu.com")driver.find_element_by_id("kw").send_keys("线性测试")driver.find_element_by_id("su").click()sleep(2)driver.quit()
优点:这种模型的优势就是每个脚本都是完整且独立的。
缺点 ...
Unittest单元测试
Unittest单元测试单元测试的定义什么是单元测试单元测试是指,对软件中的最小可测试单元在与程序其他部分相隔离的情况下进行检查和验证的工作,这里的最小可测试单元通常是指函数或者类,一般是开发来做的,按照测试阶段来分,就是单元测试、集成测试、系统测试以及验收测试。
为什么要做单元测试
单元测试之后,才是集成测试,单个单个的功能模块测试通过之后,才能把单个功能模块集成起来做集成测试,为了从底层发现bug,单元测试时可以减少合成后出现的问题。
越早发现bug越好,这样可以早点发现问题,不然问题累计到后面,很可能会因为一个做错了而导致整个模块甚至更大范围的推倒重来,对于时间和经费来说,是非常浪费的!
对于测试来说,单元测试就是为了执行用例,输入测试数据–>输出测试结果
unittest框架及原理unittest单元测试框架是python自带的一套测试框架,不需要下载。
unittest框架最核心的四个概念:
test case:就是我们的测试用例,unittest中提供了一个基本类TestCase,可以用来创建新的测试用例,一个TestCase的实例就是一个测试用例; ...
Selenium
selenium教程安装selenium库安装
通过命令安装
pip install selenium
在PyCharm–>Settings–>Project:Testing–>Python Interpreter安装
selenium库目录:C:\Users\admin\AppData\Local\Programs\Python\Python36-32\Lib\site-packages
浏览器驱动安装
查看本机Chrome浏览器版本
下载对应Chrome浏览器驱动:chromedriver_win32.exe
把浏览器驱动放入Chrome安装目录和python安装目录下
python默认安装目录:C:\Users\admin\AppData\Local\Programs\Python\Python36-32
selenium使用selenium自动化原理
selenium自动化流程
自动化程序调用Selenium 客户端库函数(比如点击按钮元素)
客户端库会发送Selenium 命令给浏览器的驱动程序
浏览器驱动程序接收到命令后 ,驱动浏览器去执行命 ...
爬虫
爬虫第一章 :爬虫基础简介什么是爬虫:通过编写程序,模拟浏览器上网,然后使其去互联网上抓取数据的过程。
爬虫在使用场景中的分类:
通用爬虫:抓取系统重要组成部分。抓取的是一整张页面数据。
聚焦爬虫:是建立在通用爬虫的基础之上。抓取的是页面中特定的局部内容。
增量式爬虫:检测网站中数据更新的情况。只抓取网站中最新更新出来的数据。
反爬机制:门户网站可以通过制定相应的策略或技术手段,防止爬虫程序进行网站数据的爬取。
反反爬虫策略:爬虫程序可以通过制定相应的策略或技术手段,破解门户网站中具有的反爬虫机制,从而获取门户网站的数据。
robots.txt协议:规定了网站中哪些数据允许爬取以及哪些数据不允许爬取。
http协议:HyperText Transfer Protocol,超文本传输协议。
http协议的特点(重点):
应用层协议。(最顶层也是和用户交互的层)
无连接:http协议每次发送请求都是独立的。http 1.1以后有一个头:connection:keep_alive。
无状态:http协议不记录状态,进而产生了两种记录http状态的技术:cookie和session。
...
Shell脚本自动部署项目
Shell脚本自动部署项目自动部署项目在本地项目中,通过git将最新代码推送到远程仓库,在linux中通过git拉取远程仓库的SpringBoot项目代码,通过maven进行编译、打包处理成jar包,最后通过java -jar 项目jar包名进行启动。
前提:Linux系统已经搭建了JDK和mysql服务,项目所关联的sql文件已经初始化。
操作步骤:
在Linux中安装Git
在线安装git
克隆项目代码
123456# 安装gityum list git # 列出git安装包yum install git*** # 在线安装git# 克隆项目代码cd /usr/localgit clone https://gitee.com/liu-renwei/reggie_take_out.git
安装maven
安装maven
设置环境变量
修改settings.xml配置文件
12345678910# 安装maventar -zxvf appche-maven-3.5.4-bin.tar.gz -C /usr/local# 设置环境变量vim /etc/profile ...
Swagger入门
Swagger入门前后端分离开发介绍前后端代码在一个工程所带来的问题:
开发人员同时负责前端和后端代码开发,分工不明确。
开发效率低。
前后端代码混合在一个工程中,不便于管理。
对开发人员要求高,人员招聘困难。
前后端分离开发:
前端代码的开发由专门的前端开发人员负责,后端代码则由后端开发人员负责,这样可以做到分工明确、各司其职,提高开发效率,前后端代码并行开发,可以加快项目开发进度。
目前,前后端分离开发方式已经被越来越多的公司所采用,成为当前项目开发的主流开发方式。
前后端分离开发后,从工程结构上也会发生变化,即前后端代码不再混合在同一个maven工程中,而是分为前端工程和后端工程。
开发流程前端后端开发人员在开发项目之前先互相定制好接口规范,然后分别根据接口规范并行开发(后端人员可以通过postman、swagger等工具测试后端接口,前端人员可以通过mock数据进行页面数据展示测试)。项目开发完毕后需要进行前后端项目连调格式校验,连调完毕,最后提交给测试人员。
接口(API接口):就是一个http的请求地址,主要定义请求路径、请求方式、请求参数、响应数据等内容。
...
IDEA Debug调试
IDEA Debug调试debug简介Debug 是程序开发人员必会的一项调试程序的技能。
Debug能帮助我们做什么:
追踪代码的运行流程。
程序运行异常定位。
线上问题追踪。
Debug对于程序学习者的意义:
通过调试能够更好的查看程序的执行流程。
复杂的程序逻辑,借助调试能够帮助理解程序。
定位问题,提高自我解决问题的能力。
断点类型设置断点类型:
行断点
详细断点(源断点)
方法断点
字段断点
异常断点
行断点:debug运行停留在该行,放行则跳到下一个断点处,如果没有下一个断点则程序运行结束。
源断点:按住shift键打断点。
方法断点:在方法处打断点,如果是普通方法,debug运行会进入方法的第一行,如果是接口方法,则跳入到接口实现类重写该方法的第一行。放行则跳到该方法的结束符。
字段断点:在字段处打断点,debug运行会停留在该字段第一次赋值或修改的行,放行则跳到下一个该字段被修改的行。如实体类的有参构造和set方法对字段赋值和修改。
异常断点:点击显示所有断点,添加需要的调试的异常类型,debug运行会停止在出现该异常的行。
观察变量查看变量 ...
Markdown语法
Markdown语法标题1、一级标题:‘#’+空格+内容
2、二级标题:’##’+空格+内容 ==>以此类推
字体Hello World
Hello World
Hello World
Hello World
1、粗体:在内容两边分别加两个‘*’
2、斜体:在内容两边分别加一个‘*’
3、斜体加粗:在内容两边分别加三个‘*’
4、删除线:在内容两边分别加两个‘~’
引用
选择Java走向人生巅峰
1、引用:’>’+空格+内容
分割线
1、分割线:三个’-‘或者三个’*’
图片
1、图片:’!’+’[]’+’()’
‘[]’:图片标题 ‘()’:图片地址(网络图片地址或本地图片地址)
超链接跳转到教学视频
1、超链接:’[]’+’()’
‘[]’:超链接标题 ‘()’:网页地址(在网页有效)
列表
A
B
C
X
Y
Z
1、有序列表:1+’.’+空格
2、无序列表:’-‘+空格
表格
姓名
性别
生日
张三
男
2000.7.28
1、表格:|标题|标题|
|–|–|
...
Typora语法
Typora使用1、格式和样式设置
我们可以通过MarkDown语法来设置字体、内容、代码块等的格式和样式
也可以通过Typora提供的段落和格式里面的功能进行设置(有快捷键)
2、Typora浏览器
Typora本质上是一款浏览器
在文件中打开偏好设置,在通用的高级设置那开启调试模式
在我们的笔记中右击选择检查元素,可以打开和浏览器一样的调试面板
3、改变内置格式和样式
在文件中打开偏好设置,在外观的主题那点击打开主题文件夹
每一个主题对应一个css文件,我们默认使用的是Github主题
我们可以通过调试面板预改变我们的格式和样式
打开Github.css文件,然后复制css块去查找要修改的样式块
把预设置的格式和样式替换上去,重启Typroa即可!!!
效果–>
改变内置样式
4、下载第三方主题
下载地址:https://theme.typora.io/
把下载好的css文件放入Typora安装目录的\themes下,重启Typora!!!
选择放入的主题即可!!!!!
5、Typora快捷键一:菜单栏
文件:alt+F
编辑:al ...
Vue入门
Vue入门vue简介动态构建用户界面的渐进式JavaScript框架,作者尤雨溪。
vue的特点:
遵循MVVM模式。
编码简洁,体积小,运行效率高,适合移动/PC端开发。
它本身只关注UI,可以引入其它第三方库开发项目。
Vue周边库:
vue-cli:vue脚手架
vue-resource
axios
vue-router:路由
vuex:状态管理
element-ui:基于vue的UI组件库
mvvm介绍M: Model 数据模型
数据可能是固定的思数据,更多的是来自服务器 ,从网络上请求下来的数据。
V: View 视图模板
在前端开发中, 通常是DOM层,给用户展示各种信息。
VM: View-Model 视图模型
View和Model沟通的桥梁,双向数据绑定。
SPA(单页应用程序):单页Web应用(single page web application,SPA),就是只有一张Web页面的应用,是加载单个HTML 页面并在用户与应用程序交互时动态更新该页面的Web应用程序。
vue指令基本使用CDN导入:
1<script src="ht ...