svn
配置管理/SVN
配置管理
与实际工作的关系
新人入职--主管要求去服务器看一下最新需求
服务器的地址?
有无配置管理工具?
有工具,没安装
去哪下载
询问安装包
开展测试工作
测试中的成果物
测试计划
测试方案
测试用例
测试报告
缺陷报告
脚本
开发中的成果物
SRS
概要设计说明书
详细设计说明书
代码
代码走查走
分享交流成果物
例:张三想借鉴李四的用例
聊天工具
回溯比较繁琐,不便于查找和管理
邮件
文件较大时,不适合
人员较多,使用不便
远程登录
win+R
mstsc
1.关闭防火墙
2.勾选允许远程访问
我的电脑-右键-属性-远程-勾选允许远程
输入将要访问IP
其他用户不能使用
配置管理工具
VSS、CVS、Clearcase、SVN
版本控制
记录若干文件的内容变化(1.0->2.0->3.0),以便查看特定版本
测试人员兼任配置管理员
配置管理员
CMO
Configuration Management Officer
职责
设置配置管理流程
人员权限的分配
软件的更新维护
定期的备份
扩展:首席市场总监Chief Marketing Officer
SCM
Software Configuration Management
配置管理委员会
CCB
Change Control Board
评估和批准配置项的修改
解决实际工作中的问题
配置管理工具
SVN:Subversion
架构
C/S
Client server
需要安装客户端
安全性高
不方便维护
开发成本较高
例:QQ、SVN、手机app
B/S
Browser server
不需要安装客户端
安全性较低
开发成本相对较低
维护方便
例:浏览器中百度搜索、淘宝、京东
扩展:单击
数据在本地
需要安装
例:单击游戏
版本控制工具
使用工具
如何快速掌握一门工具
了解工具的架构
C/S
B/S
测试中工具的分类
配置管理工具
SVN、CVS、VSS、Clearcase
缺陷管理工具
QC、禅道、Bugzilla、Bugfree、ALM
测试管理工具
QC、禅道、ALM、Testlink、JIRA
自动化测试工具
QTP、Selenium
Robotium 、UIAutomator、Appium
LoadRunner、Jmeter
如何开展配置管理工作CMO
制定配置管理流程
选择配置管理工具
SVN
确定人员的权限
开发组
开发经理
测试组
测试经理
产品组
产品经理
项目经理
确定备份还原规则
一周?一个月?备份
备份全部?
备份部分?
何时还原
定期对软件进行维护、更新
配置管理(版本控制)流程-图
角色:
变更申请人
CMO
CCB
变更影响人
SVN-Subversion
服务器的安装
检查本机是否已经安装svn
安装步骤
1.Location安装路径--不要带中文
英文
2.repositories-仓库位置
3.port端口号
一个服务对应一个端口号
端口号被其他服务占用
解决
终止其他服务
查看进程
netstat -ano|findstr "443"
任务管理器->进程->查看->选择列->勾选PID
不建议
用其他端口号
4435
服务器的操作
选中Repositories->右键-->create new repositories-->名称
作用:
用来存储客户端提供的文档资料或代码
目录说明
db
所有版本控制的数据
hooks
存放脚本、代码
locks
锁的机制
有的仓库文件不希望其他人员看到
format
存放当前文件库的配置版本号
conf
配置文件
readme
软件的说明
visiualSVN server(local)
右键->properties 属性
general
库的路径
network
server name:服务器名称
和计算机名称相同
不要复制计算机名称后面的.点
客户端安装
tortoiseSVN(乌龟)
一路下一步
重启电脑
no
1.结束进程
任务管理器:explorer.exe 桌面进程
2.新建进程
文件->新建->输入explorer.exe
yes
客户端操作
实际工作场景
场景1:从仓库/服务器down(下载)资料
A:服务器端
创建仓库
117SVN课程
B:客户端
空白处右键-->SVN checkout(检出)
获取仓库中全部内容,服务器与客户端建立连接
Copy仓库URL
服务端->仓库->右键->copy URL
创建USER
服务端--users--create user->输入用户名密码
zhangsan 123
将用户添加至仓库
选中仓库->右键->properties->add-->选择相应的用户-->只读
删everyone
在117SVN课程的上一级进行删除 Repositories->右键属性->remove
checkout->输入用户名密码
.svn
建立服务器与客户端之间的连接
不能删除
显示隐藏文件夹->工具->文件夹选项->查看->显示所有文件 和文件夹
场景2:客户端文件/成果物提交给服务器
1.创建一个txt“京东登录缺陷报告.txt”
蓝色?号表示暂时未纳入SVN管理
2.右键->SVN->add
蓝色+号,文件已被控制
并未上传至服务器
3.提交到仓库--SVN commit
message:备注、描述/修改了什么内容
提交不成功-->zhangsan修改权限
read/write
4.绿色对勾
提交成功
5.修改
红色!号
右键-->update--->commit
场景3:张三写了三个版本的缺陷报告
1.0
2.0
3.0
主管让其从3.0变更到2.0
右键文件-->show log查看日志-->revert to this revision
场景4:
新入职的李四想查看张三的缺陷报告
李四--只读
1.新建李四用户
user->lisi-read only>添加到仓库117svn课程
2.将张三的缺陷报告check到本地
checkout
注意:
文件不能复制URL,文件夹可以
在服务器端文件不能直接删除,文件夹可以
check的文件和.svn在同一级别
3.点击save
svn--settings--save data---authentication data---clear
场景5:备份还原
服务器崩溃--数据丢失--定期备份
服务器端:命令行start command
SVNadmin dump(备份) 需要备份的仓库路径>备份路径\文件名.dump
还原
1.新建空项目->名称和原项目相同
2.命令行SVNadmin load(还原) 空项目的路径<备份路径\文件名.dump
箭头表示数据的流向
还原后:用户并未还原,需要自行添加
注意:
svn工作,首先需要查看服务端服务是否启动
小结:
作用
上传、下载成果物
成果物分享
进行版本控制管理
提高工作效率