- 博客(58)
- 问答 (1)
- 收藏
- 关注
原创 yaml文件
yaml文件简介YAML是一个可读性高,用来表达数据序列化的格式,YAML参考了其他多种语言,包括:C语言、Python、Perl,并从XML、电子邮件的数据格式(RFC 2822)中获得灵感。当前已经有多种编程语言或脚本语言支持(解析)这种语言。yaml语言的设计目标,就是方便读写,实质上是一种通用的数据串行化格式。基本语法规则- 大小写敏感- 使用缩进表示层级关系- 缩进时不允许使...
2020-04-08 17:37:31
544
原创 用户登录页面测试的一步步深入
登录页面测试在面试测试工程师相关的岗位时,一般面试官都会使用用户登录页面的测试来考察面试者的测试用例设计能力以及测试思维。初级一个看似简单的测试用例设计题,从你的回答就能得出你的测试用例设计功底。初级的测试工程师可能会想到以下测试用例:(1)什么都不输入,验证是否登录失败,并且提示信息正确;(2)输入正确的用户名,正确的密码,验证是否登录成功;(3)输入正确的用户名和错误的密码,验证...
2019-12-19 11:27:29
602
原创 C++11新特性一
1.使用初始化器列表{}来进行一致且通用的初始化使用初始化列表器可以进行一致且通用的初始化。不受类型的限制,在所有的场景中都能使用。1)初始化简单内置变量如 int a = {3};也可以不使用等号如 int a {3};2)初始化容器vectorvector nums {1,2,3,4,5};使用初始化器列表时等号可写可不写;优点:使用列表初始化能够防止窄化转换(即列表初始化...
2019-12-07 18:01:23
249
转载 shell中各种括号的用法比较
在学习shell编程时,一直没弄清楚各种括号用法的区别,搜索相关资源时看到一篇讲的比较清楚的文章,这里分享一下:shell中的括号(小括号,中括号,大括号)...
2019-12-05 12:48:12
191
原创 C/C++ string和char的区别
C语言在C中,char是定义一个字符,存储的是一个字符,占一个字节,而字符串是使用’\0’终止的一维字符数组(字符串的长度为字符个数加1,’\0’也占一个长度),定义一个字符串可以如下:char greet[] = "hello";//上面的语句可以写成以下语句char greet[6] = {'h','e','l','l','o','\0'};C中常用的操作字符串的函数如下:st...
2019-12-04 18:28:23
2403
原创 linux三剑客之sed命令详解
简介linux中的sed命令是Linux三剑客之一,它是stream editor流式编辑器的简称,可以定位到匹配的数据,并可以对数据进行增删改查等编辑操作,是功能强大的文本文件、日志、配置文件的处理工具。sed命令与SQL进行类比,相当于SQL的update table set filed=new where filed=old。命令语法格式sed [OPTIONS] ‘command’...
2019-12-04 12:42:18
518
原创 shell编程之数组
和其他编程语言一样,shell脚本也支持数组,shell数组元素的下标也是从0开始,并且shell创建数组的时候不需要指定数组的大小,但是,shell脚本只支持一维数组,不支持多维数组。数组定义格式在shell中,用小括号()来表示数组,数组元素之间用空格来分隔开。arr=(value1 value2 … valuen)⚠️等号两边不能存在空格。示例如下:在使用$符号对数组元素进行引...
2019-12-03 15:01:52
616
原创 shell编程之函数讲解
在shell脚本中,用户可以自定义函数。shell函数定义语法规则语法规则1name (){函数语句块}语法规则2function name (){函数语句块return 语句}其中,function指示后续的代码是一个函数,function关键字可加可不加,name是函数名称,函数名之后有(),括号内不需要任何内容,包括空格,花括号内是函数体,函数体中可以有return...
2019-12-03 11:42:21
256
原创 linux三剑客awk命令详解之函数
awk函数在awk命令中,可以自定义函数,awk也有内置的函数,本篇文章主要介绍awk中的内置函数。awk内置函数分类在awk中,内置函数主要分为算数函数、字符串函数、时间函数、其他函数等,以下列出一些常用的内置函数:算数函数常用的主要有rand函数、srand函数、int函数。rand函数用于产生随机数,但rand函数产生的是一个伪随机数,若没有设置随机数种子,rand函数每次在调...
2019-12-02 23:30:26
1037
原创 linux三剑客awk命令详解之动作(action)
awk命令的使用语法awk [options] ‘{pattern + action}’ {filenames}在之前的文章中,action最常使用的是打印输出,示例:这里的动作’{print $2}‘可拆分成两部分去理解:1)’{ }’ 最外层的花括号属于‘组合语句’类型的动作,即将多个代码组合成代码块,比如条件语句代码块、循环语句代码块。2)‘print $2’ 属于‘输出语句类型...
2019-12-02 11:42:26
1081
原创 linux三剑客awk命令详解之模式(pattern)
awk命令的使用语法awk [options] ‘{pattern + action}’ {filenames}在之前的awk命令详解一中,笔者已经使用过BEGIN模式和END模式。现在来主要介绍awk命令中的模式。默认的情况下,awk是逐行处理文本的,也就是先处理完当前行,再处理下一行,这种默认的情况也被称为空模式。而若指定了“条件”,awk命令在处理文本时,只有满足”条件“的行才会被处理...
2019-12-02 10:22:54
1687
原创 linux三剑客之awk命令详解二(awk格式化)
awk格式化前一篇文章中awk命令详解一,笔者在使用awk时,通常使用print对文本进行输出,但是动作print只能实现简单的文本输出功能,并不能对文本格式进行编辑,若要改变文本的格式,需要使用动作printf,这类似于C语言中的pringf()函数或linux中的printf命令。借鉴一篇大佬写的printf命令详解,先熟悉printf命令。awk命令中使用printf动作可以对文本进行...
2019-12-01 20:59:20
482
原创 linux三剑客之awk命令详解一
awk命令简介awk是一个强大的文本分析工具,功能强大,具备完整的编程特性,若与SQL进行类比,它相当于SQL的select field from table,可以进行数据切片。简单来说,awk就是把文件逐行读入,以空格为默认分隔符将每行切片,然后可以对切开的部分进行各种处理。相对于grep的查找、匹配和sed的编辑,awk适合对文本进行较复杂的格式处理。基本语法awk [options...
2019-12-01 19:46:59
897
原创 linux三剑客之grep命令详解与正则表达式
grep命令grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。若将grep命令与SQL进行类比,grep相当于select * from table,该命令可以进行数据的查找与定位。grep语法规则grep [OPTIONS] PATTERN [FILE…]grep [选项] 查找内容 源文件例如,从hello.txt文件中查找内容文档中的内容如...
2019-11-29 16:11:29
658
原创 shell PS变量
PS1变量PS1变量用来定义命令行提示符,可以按照我们自己的需求来定义自己喜欢的提示符。PS1支持以下选项:\d:显示曰期,格式为"星期 月 日"。\H:显示完整的主机名。如默认主机名"localhost.localdomain"。\h:显示简写的主机名。如默认主机名"localhost"。\t:显示 24 小时制时间,格式为"HH:MM:SS"。\T:显示 12 小时制时间,格式为...
2019-11-29 12:11:22
569
原创 shell编程之选择语句
case选择语句case语法规则case $变量名 in“值1”)语句1;;“值2”)语句2;;…*)语句n;;esaccase选择语句符合单条件多分支的情况。实例:根据用户的输入来输出对应的内容#!/bin/bashread -p "Please input your choice Y/N:" -t 5 choicecase $choice in "Y")...
2019-11-29 11:19:26
1031
原创 shell编程之循环语句
for语句for语句语法 规则for 变量 in 字符串do语句1done实例#!/bin/bashfor i in `seq 1 15`do echo -e "\033[32mThe Number is $i\033[0m"done命令seq 1 15表示seq start end 列出strat到end中的所有整数,步长为1。实现1-100的求和#!/bin/b...
2019-11-28 18:50:56
259
原创 linux之read命令
read命令read命令的功能是从标准输入中读取一行,并把输入行的每一个字段的值指定给shell变量1)基本语法即将控制台的输入赋值给read命令后面的指定变量。⚠️read后面的变量个数可以有多个,若输入多个数据(变量之间用空格分割),则第一个数据赋给第一个变量,第二个数据赋给第二个变量,若输入数据个数过多,则最后所有的值都赋给最后一个变量。2)提示语句输入命令read -p “...
2019-11-28 17:16:58
571
原创 shell编程之if条件语句
if条件语法规则单分支if语句if 表达式;then语句1else语句2fi多分支if语句if 表达式1;then语句1elif 表达式2;then语句2…else语句nfi实例#!/bin/bashNUM=200if(($NUM > 4));then echo "num is greater than 4!"else echo "num is ...
2019-11-28 15:25:56
730
原创 第一个shell脚本编写
开启shell环境Mac系统下,自带的终端就是一个标准的shell环境,笔者这里没有使用自带的终端,而是自己安装了iTerm2,这也是一个标准的shell环境。创建shell脚本的路径mkdir -p shell/script创建shell脚本1)shell脚本的格式是.sh的文件,使用vim编辑器创建脚本。vim first_shell.sh2)编辑shell脚本内容#!/b...
2019-11-23 12:04:25
554
原创 linux网络通讯类命令之netstat命令
netstat命令netstat命令用于显示网络状态,利用netstat指令可以查询整个linux系统的网络情况。常用功能netstat是控制台命令,常用于监控TCP/IP网络,可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。基本语法netstat [选项]...
2019-11-22 17:51:17
349
原创 linux进程类命令之top命令
top命令top命令是liunx下常用的性能分析工具,能够实时的显示系统中各个进程的资源占用情况,是一个动态的显示过程。常用情景实时的对系统处理器的状态进行监视,该命令可以按CPU使用、内存使用和执行时间对任务进行排序。基本语法top [-] [d] [p] [q] [c] [C] [S] [s] [n]参数说明d:改变显示的更新速度top -d 3 表示更新周期为3秒q:没有...
2019-11-22 15:23:30
466
原创 linux进程类命令之ps命令
ps命令ps命令是linux进程类命令中常见的一个,是linux的进程查看命令。运用该命令可以确定有哪些进程正在运行、运行的状态、进程是否结束、进程占用资源等情况。常用功能ps命令常用于监控后台进程的工作情况。语法格式ps [选项]常用选项-a :显示当前终端的所有进程信息,包括其他用户的进程;-u 用户名 :以用户的格式显示进程信息;-x :显示后台进程运行的参数;-e :...
2019-11-22 14:02:34
329
原创 shell中的变量
变量shell中预设的变量都是大写的。变量就是使用一个较简单的字符串来替代某些具有特殊意义的设定以及数据,可以使用echo命令显示变量的值。echo $PWDecho $PATH另外可以使用env命令列出全部系统预设的系统环境变量,不同登录的用户列出的环境变量也不一样。常见的环境变量有:PATH : 决定shell将到哪些目录中寻找命令或程序;HOME : 当前用户的主目录;...
2019-11-21 15:12:41
509
1
原创 什么是shell?bash?bash的特点
什么是shell?shell是系统和计算机硬件交互时使用的中间介质,是系统的一个工具。在shell和计算机硬件之间还有一个系统内核。用户直接面对的不是计算机硬件而是shell,用户把指令告诉shell,shell再传输给系统内核,接着内核再去支配计算机硬件去执行各种操作。通俗一点来说,shell充当来用户与计算机之间的翻译官角色。可以将shell看作是一种语言名称,具体的语法遵循bash等的规...
2019-11-21 14:17:24
5218
原创 查看系统的默认shell
linux系统中可用的shell都记录在/etc/shells文件中,可以通过cat命令来查看当前系统可用的shell。打开系统终端,输入以下命令cat /etc/shells我的系统返回结果是可以看到当前系统支持的shell种类比较多。那如何查看当前系统的默认shell呢?通过命令:echo $SHELL结果如下:可见系统默认的shell是bash。...
2019-11-21 11:25:41
1758
原创 vector中的size,capacity,resize和reserve区分 C++
vectorvector是C++中的顺序容器,是一种动态数组,支持下标访问,下标访问的时间复杂度为O(1),在容器尾部之外的位置进行元素的插入和删除需要移动部分数组元素,时间复杂度为O(n)。区分size指当前容器所存储的元素个数capacity指容器在分配新的存储空间能存储的元素总数以上两个概念的区分就是capacity是容器能存储元素的最大总数,而size是当前容器存储元素的个数...
2019-11-07 19:34:59
990
1
原创 KMP算法解析
KMP算法背景在刷leetcode时,遇到了这样一个问题,给定两个字符串A和B,问你在A中是否有字符串B,并给出A中B出现的起始位置。拿到这道题,首先想到的是使用暴力搜索的方法,直接在A中去搜索B,这种方法太暴力,当出现不匹配字符时,遍历A和B的指针需要同时回退,时间复杂度高,为O(m*n),其中m,n分别是字符串A和B的长度。而且,当字符串中重复的元素比较多时,这种解法会有很多不必要的操作...
2019-11-05 19:17:45
274
原创 软件测试之界面测试
界面测试界面测试简称UI测试,测试功能界面上看到的所有元素(文字、控件等)颜色风格是否统一、布局是否合理、美观、是否符合用户习惯、页面元素是否可用等。要做好界面测试,可以从以下方面考虑文案的测试对界面上的字体、字号、格式、规范等进行测试图片的测试若界面上有图片,从清晰、尺寸、配色、风格等角度进行测试布局的测试从尺寸、位置、排序规律、对齐方式等角度进行测试控件的测试主要针对界面...
2019-11-04 22:45:41
4200
原创 软件测试工作流程
软件测试主要有以下工作流程需求分析与评审拿到相关的需求文档,仔细阅读,看看流程是否正确、功能点描述是否模棱两可等,记录疑问点,由测试负责人收集,并和产品、开发一起开会评审需求文档编写测试方案和测试计划测试计划主要包含测试目标、测试资源、测试策略、测试需求、测试进度计划等,大多由测试组长编写测试方案是具体实施的方案,主要包含测试需求细化、自动化测试设计、性能场景抽离、测试数据和测...
2019-11-04 20:30:37
341
原创 map与unordered_map,set与unordered_set的比较
map与unordered_map这里提一下,unordered_map在C++11的时候被引入标准库,而hash_map没有,所以建议使用unordered_map。内部实现机理不同map:map的底层是一个红黑树(红黑树是非严格的平衡二叉搜索树),红黑树具有自动排序的功能,因此map内部的所有元素是有序的,map中的每一个元素都对应着红黑树中的一个节点,因此,map元素的查找、删除、插...
2019-10-25 10:59:25
867
原创 常用的软件测试方法
测试方法分类按开发阶段划分单元测试单元测试方案产生的来源是详细设计文档。主要针对软件设计的最小单元进行测试,测试的内容包括软件的内部逻辑结构,如循环、判断等,以及代码的内容。单元测试主要使用的方法是白盒测试。集成测试集成测试方案产生的来源是概要设计文档。这一测试阶段主要检验程序单元或部件的接口关系,并逐步集成为符合概要设计要求的程序部件或整个系统。集成测试用的方法是白盒为...
2019-10-22 11:30:44
1145
原创 软件测试过程管理理念
要做好软件测试,测试过程应该满足以下几点:尽早测试1)测试人员应早期参与软件项目,及时开展测试的准备工作2)应尽早的开展测试执行工作全面测试1)应该对软件的所有功能等进行全面的测试2)软件开发人员和测试人员应该全面的参与到测试过程中全过程测试1)测试人员要充分关注开发过程,对开发过程的各种变化及时地做出响应2)测试人员要对测试的全过程进行全程的跟踪独立的、迭代的测试1)软件...
2019-10-22 09:55:45
445
原创 软件测试过程及模型
一个标准的软件测试过程应当包括以下测试活动(但不仅限以下活动):需求分析编写测试方案及测试计划设计测试用例测试用例评审测试用例执行编写测试报告以上也是一般的测试工作流程。软件测试过程主要有以下几种模型:V模型V模型图形如下:V模型揭示了开发过程与测试过程中各阶段的对应关系,通过开发和测试同时进行的方式来缩短开发周期,提高开发效率。缺点:忽视了测试对需求分析,系统设...
2019-10-21 20:55:25
1380
原创 POST与GET比较
原理的区别GET、POST、PUT、DELETE是HTTP协议定义的与服务器交互的4种基本的方法,这4种方法对应着对URL(资源描述符)资源的查、改、增、删操作。一般在浏览器中输入网址访问资源是通过GET的方式,在FORM表单进行提交时,可以通过Method指定提交的方式(POST或GET),默认为GET方式。所以GET方法用于获取/查询资源信息,POST方法一般用于更新资源信息,这里作进一...
2019-10-14 16:01:42
290
原创 Django中的测试一
Django偏爱使用Python标准库中内置的unittest模块来编写测试,当然在Django中进行web测试也可以使用另一个python测试框架,Django提供了用于这种集成的API和工具。使用python标准模块unittest的单元测试Django中创建应用(mylists)的测试写在应用目录(mylists/)下的tests.py文件中。测试系统会自动在所有以tests开头的文件里...
2019-10-14 14:38:55
819
原创 软件测试基础之三个重要的生命周期
三个重要的生命周期三个重要的生命周期包括软件生命周期、测试的生命周期、缺陷的生命周期。以下分别写一下这三个周期。软件生命周期软件生命周期(Software Life Cycle,SLC)是软件的产生直到报废或停止使用的生命周期,具体包括以下几个阶段:软件立项可行性研究需求分析概要设计详细设计编码实现单元测试集成测试确认测试系统测试验收测试运行维护当然,从软件立项...
2019-10-13 23:14:06
1112
原创 测试基础之软件缺陷定义
软件缺陷定义满足什么样的条件才被定义为软件缺陷呢?满足以下一条或同时满足多条都能称之为缺陷。1) 软件未实现产品说明书要求的功能产品说明书中要求的功能没有实现,那么这个软件就是不符合要求的,是功能不完整的,那么这个就是一个有缺陷的软件。2)软件出现了产品说明书指明不应该出现的功能产品说明书中指明不需要这一功能,而软件中出现了这一功能,有点画蛇添足的味道,或许用户会认为有这一功能会影响使用...
2019-10-13 00:18:32
1644
原创 Django2.2中ForeignKey()出现报错
Django2.2版本,在models下编写ForeignKey()方法list = models.ForeignKey(List,default = None)执行程序时出现以下报错:通过google查找原因,是因为Django2.X版本与之前的版本差异。解决方法是在方法中添加on_delete参数就可以了:list = models.ForeignKey(List,default...
2019-10-09 23:43:04
412
1
空空如也
如何在dxf文件中添加新图层及在新添图层中添加实体信息?
2019-01-05
TA创建的收藏夹 TA关注的收藏夹
TA关注的人