找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手

《第五部分:Mysql在Linux环境中使用、以及了解BUG》

[复制链接]

一、了解什么测试中的bug 、以及流程
(一)市面上有哪些bug管理工具?特点是什么?
目前市面上用的bug管理工具还是挺多的,就比如:日事清、JIRA(付费)、TracGitlabpingCode、禅道(zentao)QCTAPD等,具体什么特点,读者名可以自行的去百度前三行了,详细很多官网或其他博主讲的已经非常详细了,这里就不一一解说了。其中很大公司使用的是禅道这款管理工具。
禅道是第一款国产的开源项目管理软件,她的核心管理思想基于敏捷方法scrum,内置了产品管理和项目管理,同时又根据国内研发现状补充了测试管理、计划管理、发布管理、文档管理、事务管理等功能,在一个软件中就可以将软件研发中的需求、任务、bug、用例、计划、发布等要素有序的跟踪管理起来,完整地覆盖了项目管理的核心流程。
有机会大家可以下载试着玩一下,需要软件包的朋友可以加我下面的QQ群或留言私聊我。


(二)你之前公司的bug管理流程是怎么样的? (很重要)
提单:测试人员发现bug,提交bugbug管理工具(项目管理工具)
仲裁:公司里面有话语权的大佬
规范审核:测试经理对提交的bug进行规范审核
BUG管理流程一(重点):
4R~N(M]1@LDG[98R4]{GUJT.png


BUG管理流程二:
32[T(WFK}[}5OY(N@9$P%FY.png


bug管理流程(重点-参考BUG管理图一:
1)多名测试人员发现bug并且提交bugbug管理工具。
2)测试经理会对提交的bug进行规范审核。
3)测试经理如发现提交bug已经存在则给到测试人员进行确认。
4)测试人员确认是重复的bug则直接丢弃,如不存在则把bug重新给到测试经理进行规范审核该bug是否重复,如果确认不是重复的bug,测试经理则将bug发送至开发经理。
5)开发经理分配给到具体的开发人员。
6)开发人员会对bug进行确认,确认测试提交的bug是否为有效bug,如果该bug确认有效则会根据项目的进度,对bug进行修复(越严"重的bug修复的优先级越高)bug修复完成后,提交至测试经理。
7)测试经理分配给到具体的测试人员进行回归测试(bug级别比较严重会直接给到bug的发起人进行回归测试)。回归测试通过则关闭bug,如果进行回归测试不通过,则把bug重新激活。



(三)bug的级别有哪些?
bug的级别有哪些?
序号
等级
介绍
原因
1
1bug
必须优先要改
致命错误
1、常规操作引起的系统崩溃、死机、死循环、白屏、crash
2、造成数据泄漏的安全性问题,比如恶意攻击造成的账户私密信息泄露
3、涉及金钱,如支付类软件,金钱计算错误
2
2bug
严重错误
次主体功能
1、重要功能不能实现(例如:微信没有实现语音聊天、朋友圈,等)
2、错误的波及面广,影响到其他重要功能正常实现
3、非常规操作导致的程序崩溃、死机、死循环 (非常规操作:用户使用软件时不会进行的操作)
4、外观难以接受的缺陷(例如:直播平台的封面图片的失真、压缩,完全变形)
5、密码明文显示
3
3bug
一般错误
不影响产品的运行、不会成为故障的起因、但对产品外观和下道工序影响较大的缺陷
涉及到其他功能的使用
1、次要功能不能正常实现
2、操作界面错误(包括数据窗口内列名的定义,含义不一致)(例如:列名与列名下的内容不一致)
3、查询错误、数据错误显示
4、简单的输入限制未放在前端进行控制;(格式显示,如登录和注册中的格式判断可由前端判断)
5、删除操作未给出提示
4
4bug
建议性BUG(优化)
程序在一些显示上不美观,不符合用户习惯,或者是一些文字的错误
1、界面不规范
2、辅助说明描述不清楚
3、提示窗口文字未采用行业术语
4、界面存在文字错误
5、改进意见:可以提高产品质量的建议, 包括新需求和对需求的改进



(四)一条完整的bug应该包含哪些信息?
4、一条完整的bug应该包含哪些信息?
序号
介绍
介绍
[size=10.5000pt]1
bug编号
[size=10.5000pt]
[size=10.5000pt]2
Bug标题
bug呈现的样子
[size=10.5000pt]3
bug等级
[size=10.5000pt]
[size=10.5000pt]4
bug优先级
[size=10.5000pt]
[size=10.5000pt]5
bug重现步骤
是怎样一步一步发现BUG的
[size=10.5000pt]6
bug所属的模块
[size=10.5000pt]
[size=10.5000pt]7
bug的前置条件
[size=10.5000pt]
[size=10.5000pt]8
bug的附件
可以附上出现的缺陷截图更有说服力
[size=10.5000pt]9
bug的预期结果
就是bug的用例的预期结果
10
bug的实际结果
就是bug的用例的实际结果
11
bug创建人
[size=10.5000pt]
12
bug的接收人
是指开发



(五)bug的状态有哪些?
bug的状态有哪些?
序号
bug状态
介绍
[size=10.5000pt]1
New(新的)
bug被发现
[size=10.5000pt]2
Assigned (已指派的)
开发人员接受此bug
[size=10.5000pt]3
Open(打开)
开发人员正在修复此bug
[size=10.5000pt]4
Fixed (已修复的)
bug已经被修复
[size=10.5000pt]5
Pending Reset(待再测试的)
按bug等级进行测试
[size=10.5000pt]6
Reset(测试)
测试人员正在进行测试
[size=10.5000pt]7
close(关闭)
bug被修复
[size=10.5000pt]8
reopen(重新打开)
回归bug时发现bug依然存在或者产生了新的bug,将bug状态修改为reopen
以下是借鉴网上其他博主
序号
bug状态
介绍
1
已指派的bug
1、跟踪、提醒开发、
2、已修复的,更新环境验证
2
已解决的bug
1、更新环境验证
2、验证通过,关闭
3、验证不通过,重新打开
4、回归验证时继续跟进bug,直到关闭bug
3
重复的bug
1、确认重复,关闭
2、不重复,写明原因
4
不是bug
1、首先确认开发环境和测试环境是否一致
2、不是缺陷关闭
3、是缺陷和开发沟通
4、未得到解决与产品沟通
5
无法重现
1、首先确认开发环境和测试环境是否一致
2、重现不了,与产品和开发一起确认关闭(依据bug的严重程度)
3、找到重现原因,写明清楚,指派给开发
6
不予解决
1、找产品经理确认
2、不予解决,关闭
3、要解决,写明原因给开发
7
设计如此
1、找产品经理确认
2、不予解决,关闭
3、要解决,写明原因给开发
8
延期修改
1、根据bug的严重程度,是否影响当前版本的发布
2、与产品经理确认
3、不予延期,写明情况,激活
4、确认延期,做好记录,后续版本进行关注


(六)bug面试问题
问:如果出现偶现bug怎么解决?
首先我会根据上次操作步骤进行重现,如果出现了BUG,我会截图并保存并比较BUG给开发,如若不能重现,我会反馈给测试经理或产品经理进行反馈。


二、MySql在Linux环境下安装
()
在线安装mysql命令:
yum install mysql
yum install mysql-server


三、MySql各种指令使用介绍
(一)MySQL服务语句
MySQL服务语句
命令
介绍及用法
[size=10.5000pt]
service mysqld start
启动mysql
[size=10.5000pt]
service mysqld stoped
关闭mysql
[size=10.5000pt]
service mysqld status
查看mysql状态
[size=10.5000pt]
mysql -uroot -p
登录mysql方法一
[size=10.5000pt]
mysql -uroot -p123456
登录mysql方法二
[size=10.5000pt]
mysqladmin -uroot password "123456"
重置root账号的密码
[size=10.5000pt]
select version();
查看mysql版本
[size=10.5000pt]
按键:ctrl+c(或者exit)
退出mysql操作界面


(二)MySQL查询数据库、表结构语句
MySQL基本语句
命令
介绍及用法
[size=10.5000pt]
2.1 常用的sql语句
[size=10.5000pt]
[size=10.5000pt]
show databases;
查看mysql的所有数据库
[size=10.5000pt]
show tables;
查看数据库下所有表
[size=10.5000pt]
select database();
查看所在数据库
[size=10.5000pt]
use 数据库名称;
进入数据库
[size=10.5000pt]
desc 表名;
查看表结构
[size=10.5000pt]
create database 数据库名称
创建数据库
[size=10.5000pt]
drop database 数据库名称
删除数据库
create table+表名(字段1名称 数据类型 约束,字段2名称 数据类型 约束)
创建表
[size=10.5000pt]
[size=10.5000pt]
[size=10.5000pt]
[size=10.5000pt]
[size=10.5000pt]
[size=10.5000pt]
[size=10.5000pt]
2.2 数据类型:
[size=10.5000pt]
[size=10.5000pt]
数值型:int、bigint、float单浮点型
int数据类型的存储数据值的范围为-2147483648 至 2147483647
[size=10.5000pt]
文本型:varchar、char
[size=10.5000pt]
[size=10.5000pt]
日期型:date、datetime
[size=10.5000pt]
[size=10.5000pt]
[size=10.5000pt]
[size=10.5000pt]
[size=10.5000pt]
[size=10.5000pt]
[size=10.5000pt]
[size=10.5000pt]
2.3 常见的约束:
[size=10.5000pt]
[size=10.5000pt]
primary key
主键约束:具有唯一性,设置为主键的字段对应的值必须唯一
[size=10.5000pt]
auto_increment
自增长约束:默认在之前的数值上加一
[size=10.5000pt]
default
默认值约束
[size=10.5000pt]
not null
非空约束(非null约束)
[size=10.5000pt]
foreign key
外键约束


(三)MySQL修改表结构
修改表结构
命令
介绍及用法
desc
1.查看表结构
[size=10.5000pt]
desc+表名;(显示字段名称,数据类型,约束,备注)
rename
⒉修改表名
[size=10.5000pt]
alter table +表名 rename +新表名
change
3.修改表字段
[size=10.5000pt]
alter table +表名 change+原字段名+新字段名+数据类型+约束
add
4.添加表字段(默认放最后面)
[size=10.5000pt]
alter table +表名 add+字段名+ 数据类型+约束;
add...first
5.添加表字段,并放到第一个字段前
[size=10.5000pt]
alter table +表名 add+字段名+ 数据类型+约束 first;
add...after
6.添加表字段,并放到某个字段后
[size=10.5000pt]
alter table +表名 add+字段名+数据类型+约束 after+字段名;
[size=10.5000pt]
7.同时添加两个字段,默认添加到字段最后
[size=10.5000pt]
alter table +表名 add(字段1+数据类型,字段2+数据类型);
drop
8.删除表字段
[size=10.5000pt]
alter table +表名 drop +字段;
[size=10.5000pt]
9.删除表两个字段
[size=10.5000pt]
alter table +表名 drop 字段1,drop 字段2;
auto_uincrement
10.修改主键id为自增长
[size=10.5000pt]
alter table +表名 change 字段名+字段名+数据类型 auto_increment;
[size=10.5000pt]
alter table +表名 modif 字段名 +数据类型 auto_inrement;
删除primary key
11.删除主键约束
[size=10.5000pt]
alter table student drop primary key;
(如果同时有主键和自增约束,没办法直接删除主键约束,需要先删除自增约束,实例如下)
alter table student modify id int;
alter table student change id id int;
添加primary key
12.添加主键约束
[size=10.5000pt]
alter table student modify sid int primary key auto_increment;
删表
13.删除表
[size=10.5000pt]
drop table+表名
默认值default
14.修改字段默认值语法:
[size=10.5000pt]
alter table 表名 alter[size=10.5000pt] column 字段名 drop default; (若本身存在默认值,则先删除)
alter table 表名 alter column 字段名 set default 默认值;(若本身不存在则可以直接设定)
alter table 表名 change age age int not null default 222;(修改默认值方式二)
alter table 表名 modify age int not null default 222;(修改默认值方式三)
拓展
【拓展change和modif区别】实例:
[size=10.5000pt]
alter table student change sex sex varchar (20) ;
[size=10.5000pt]
alter table student modify sex varchar (20) ;
[size=10.5000pt]
alter table student modify class int first ;
[size=10.5000pt]
modif和change区别是modif不能改字段名称,而change可以;modif可以修改表字段位置,而change不可以。



(四)MySQL备份表,备份数据,备份数据库,还原数据库
备份表,备份数据,备份数据库,还原数据库
命令
介绍及用法
[size=10.5000pt]
备份表,备份数据,备份数据库,还原数据库
[size=10.5000pt]
1.备份表,创建一个表与某个表相同
[size=10.5000pt]
create table+表1 like +表2
[size=10.5000pt]
⒉备份数据,把一个表的数据插入到另一个表
[size=10.5000pt]
insert into +表名 select * from+表名
注意点:插入的表必须要存在
[size=10.5000pt]
3.把一个表的某些字段插入到一个新表中
[size=10.5000pt]
insert into +表1(字段1,字段2) select 字段1,字段2 from表2
(表相同情况下)insert into +表1  select   from表2
注意点:
1.插入的表必须存在
⒉.插入的表是新表,没有数据。
[size=10.5000pt]
4.备份数据库
[size=10.5000pt]
mysqldump -uroot -p 数据库名>脚本名
[size=10.5000pt]
5.还原数据库
[size=10.5000pt]
mysql   -uroot -p +数据库<脚本名
  



(五)MySQL增、删、改语句
Mysql增删改语句
命令
介绍及用法
新增
1.表中插入数据、插入多行数据
insert into+表名+values(字段1值,字段2值..)
insert into+表名+values(字段1值,字段2值..),(字段1值,字段2值...)
3.对表中指定字段插入数据
insert into+表名(字段1,字段2) values(字段1值,字段2值)
insert into+表名(字段1,字段2) values(字段1值,字段2值),(字段1值,字段2值)
删除
4.删除表中指定数据、指定字段多行插入
delete from+表名 where 条件
5.删除表所有数据
delete from+表名
truncate+表名
删除表
6.删除表
drop table +表名
注:TRUNCATE,DELETE,DROP放在一起比较:
TRUNCATE TABLE:删除表中所有行,表结构,列,约束保存不变;
DELETE TABLE:按条件删除表数据;
DROP TABLE:删除表结构和表数据;
更新
7.更新表中指定字段数据
update+表名+ set+字段名 = 值 where 条件



(六)MySQL单表查询语句
单表查询
命令
介绍及用法
[size=10.5000pt]*
1:查询表中所有数据
[size=10.5000pt]
select * from+表名 (“*”代表所有[size=10.5000pt])
[size=10.5000pt]
2:查询1字段、多个字段的数据
[size=10.5000pt]
select 字段 from +表名
[size=10.5000pt]
select 字段1,字段2 from+表名
[size=10.5000pt]=
3:查询满足某个条件的所有数据
[size=10.5000pt]
select * from+表名 where 字段[size=10.5000pt]=值 (where后面接满足的条件[size=10.5000pt])
!=、<>
4:查询不满足某个条件的所有数据
[size=10.5000pt]
select * from+表名 where字段!=value[size=10.5000pt](“! =”代表不等于,也可以用符号”<>“代表不等于[size=10.5000pt])
and
5:查询同时满足多个条件数据
[size=10.5000pt]
select * from+表名where 条件1 and 条件2 (and关键字左右的两个条件必须同时满足[size=10.5000pt])
or
6:查询满足至少1个条件的数据
[size=10.5000pt]
select * from+表名where条件1 or 条件2 (or关键字左右的两个条件至少满足1个,否则返回空[size=10.5000pt])
between..
and ..
7:查询一个条件范围内的数据
[size=10.5000pt]
select * from +表名 where字段 between m and n (between...and ...指定一个范围)
in
8:查询字段满足在指定的集合中的数据
[size=10.5000pt]
select *from+表名where字段in(值1,值2,值3)
not in
9:查询字段不满足在指定集合中的数据
[size=10.5000pt]
select * from+表名where字段not in(值1,值2,值3)
null
10:查询字段值为空的数据
[size=10.5000pt]
select * from+表名where字段 is null(注意:字段是空不能写成字段=null)
not null
11:查询字段不为空的数据
[size=10.5000pt]
select * from+表名where字段is not null
like
12:查询某个字段模糊匹配成功的数据
[size=10.5000pt]
select * from+表名where字段like“%值%"(%用于匹配字段开头和结尾)
limit
13:查询限定的数量的数据
[size=10.5000pt]
select * from+表名 limit n(n指限定的下标,意思是前n行数据)
[size=10.5000pt]
select * from+表名 limit m,n(m指下标,n指限定的数量,下标为m的开始的n条数据)
排序asc
14:查询的数据根据某个字段从小到大排序
[size=10.5000pt]
select * from+表名order by 字段 asc (order by ...asc 从小到大排序)
排序desc
15:查询的数据根据某个字段从大到小排序
[size=10.5000pt]
select * from+表名order by 字段 desc (order by ... desc从大到小排序)
group by
16:查询的数据根据某个字段进行分组
[size=10.5000pt]
select * from+表名group by字段 (group by ...根据字段分组)
having
17:查询的数据根据某个字段进行分组再条件过滤
[size=10.5000pt]
select *from+表名group by 字段 having 条件 (having跟在group by后面,作用相当于where)
【拓展】检查字符长度:查找字符为7位、或大于7位的方法
select * from student where length(name) >=7
select * from student where name like '_______'



(七)MySQL聚合函数
MySQL聚合函数
命令
介绍及用法
count(*)
1:统计查询数据的数量
[size=10.5000pt]
select count(*) from+表名
sum(字段)
2:查询某个字段求和
[size=10.5000pt]
select sum(字段) from+表名
avg(字段)
3:查询某个字段进行平均值
[size=10.5000pt]
select avg(字段)from+表名
max(字段)
4:查询某个字段最大值
[size=10.5000pt]
select max(字段)from+表名
min(字段)
5:查询某个字段最小值
[size=10.5000pt]
select min(字段)from+表名
distinct
6:对某个字段进行去重
[size=10.5000pt]
select distinct(字段) from+表名
【实例】select class,sum(math) from student where sex=1 group by class having sum(math)>100;
sql语句的注意点:
1、要求查询的内容放在select后面;
2、已知的内容放在where后面;
3、group by后面不能接where,但是where后面可以接group by(相当于where先筛选过滤遍,然后在通过group by 进行分组)
4、group by后面不能接and
5、group by分组函数的一般和聚合函数一起使用,不能和除了分组以外的字段结合使用
6、分组字段可以可以和任意聚合函数使用



(八)数据库用户权限操作
(八)数据库用户权限操作
如何给普通的数据库用户赋予相应的权限(如增删改查)∶
1.进入:mysql数据库:
use mysql;
service iptables stop(补充:关闭linux系统防火墙[size=10.5000pt])
2.查询:mysql数据库服务器已经创建的所有用户
select host,user from user;
3.查询:指定用户所有权限
(本地用户)show grants for "用户名" @"localhost";(usage没有任何权限、all所有权限)
(远程用户)show grants for '用户名'@'%;
4.创建用户:未授权(方法一)
(本地用户)insert into user(host,user,password)values('localhost','用户名',password('密码'));
(远程用户)insert into user (host,user, password) values("[size=10.5000pt]%",'用户名',password('密码'));
创建用户后需要刷新下:flush privileges;
注意:password('密码')的目的是为了给括号里面的密码进行加密、%表示远程用户
5.创建用户:授权(方法二)
(部分权限)grant select,update,delete,drop on *.* to 'wang' @'localhost' identified by'123456'
(所有权限)grant all on *.* to '用户名' @'localhost' identified by'密码';
创建用户后需要刷新下:flush privileges;
注意:*.*,第一个*表示所有库,第二个库表示所有表
6.创建用户:授权、并刷新
grant all privileges on *.* to 'dcs'@'%' identified by '123456;
授予一个普通用户dcs及密码为123456,允许其可以通过所有客户机访问本数据库下所有的库及所有的表,假如为localhost只能在本地进行访问。
7.修改:修改用户密码
update user set password=password(123456') where user='root;(修改root用户的密码)
8.删除:删除用户
delete from user where user='zhongguo'and host='localhost;(删除用户)
9.删除:取消用户权限
revoke all on *.* from 'dcs'@'%';(取消所有权限0
revoke select,update,delete on *.* from 'dcs'@'%';(取消所有权限0
11.刷新:只要修改了权限,都需要刷新服务。
flush privileges; //刷新
[size=10.5000pt]
[size=10.5000pt]
【小总结】操作修改权限的过程:
1、进入mysql数据库:use mysql
2、查询user表中存在哪些用户:
   select host,user,password from user;
3、插入一个本地用户dcs,通过password函数对明文密码进行加密
insert into user(host,user,password) values("localhost","dcs",password("123456"));
4、刷新权限:
flush privileges;
5、查看本地用户dcs具有哪些权限(显示USAGE表示没有权限/ALL表示所有,然后再进行授权操作):
show grants for "dcs"@"localhost";
6、授予本地用户dcs对所有的库下所有的表具有所有的操作权限:
grant all privileges on *.* to "dcs"@"localhost" identified by "123456";
4、刷新权限:
flush privileges;
8、移除本地用户dcs所有的库下所有表的所有权限:
revoke all privileges on *.* from "dcs"@"localhost";
9、(拓展是否需要)修改数据库的用户密码:
update user set password=password("654321") where user="dcs" and host="localhost";
将本地用户dcs的密码修改为“654321”

《第五部分:Mysql在Linux环境中使用、以及了解BUG》.rar

142 KB, 下载次数: 0

分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册