ALM是HP出品的软件开发生命周期软件,其全称是Application Lifecycle Management,其采用B/S结构,从需求,业务模型到测试用例和缺陷管理亦应具有,满足了一般软件企业对开发的产品和项目的全程管理,功能强大易用。
本人所在的公司使用的ALM采用微软的SQL Server作为其数据库, 一直用的好好的,但是上周六,所在的写字楼在周五没有通知的情况下临时停电几个小时,虽然有UPS,但停电时间过长导致ALM和SQL Server(两者都部署在同一台机器中)所在的机器还是因为停电而关机。当这周一早上上班后才发现关机了,启动机器后仍发现无法使用,后来才发现对应的 数据库处于suspect状态。
之后查找资料,好不容易将数据库搞好了(具体过程参见MS SQLServer 2008数据库处于SUSPECT情况下的处理),但ALM仍无法使用,主要表现为登录后创建缺陷提示错误,执行测试用例也提示相同错误,如下图所示。
再次查找资料,但没有找到相关的资料,最后只好换台机器重新安装SQL Server和ALM,这次我把SQL Server和ALM分开安装在不同的机器中。
之后,在原来的ALM中用管理员账号进入站点管理,将之前的项目导出成功,导出后的文件扩展名为.qcp。
最后在新建的ALM中新建项目并采用导入之前导出的项目的方式,导入的过程中我发现会把之前的数据库也导入进来,也就是说不用专门去处理数据库的数据了。
导入完成后却发现杯具了:无法登录。
由于查找不到相关资料,只好尝试自己解决问题了:把导入的项目进行验证,如下图所示。验证结果是发现了一点问题,之后对该项目进行了修复也提示修复成功了,但仍无法登录,
这时告诉自己一定要冷静,仔细检查了自己的操作过程:发现原来的ALM是11 SP2版本,而新装的ALM是11.0版本,于是接着给新安装的ALM打上SP2,安装完成后进行了登录和执行测试用例的测试,发现都没有问题了,真是令人欣慰啊。
总结下经验教训:
1. ALM的数据库需要备份,以便在出问题的时候进行还原,可采用每周全备份一次,每天增量备份一次的方式。如果之前也备份,也就不会这么麻烦了。另外吐槽下 微软的SQL Server数据库,真的太脆弱了,断电这样常见的事情居然导致数据库挂掉,并且当时根本就无人对ALM和SQL Server进行操作,数据库居然提示日志文件不完整。
2.ALM本身备份较麻烦,如果出现问题,可采用先导出项目,之后重新安装ALM并导入该项目的方式,不过要记得保持和之前的ALM一样的版本哦。