转换QTP对象库xx.tsr文件为xx.xml文件以便git跟踪-创新互联

众所周知,Git仅能跟踪文本文件,而QTP所生成的对象库文件xx.tsr是一种二进制文件,不可以被git所跟踪。本文详细介绍了利用git的hooks特性,来将xx.tsr文件转换成xx.xml文件,以便跟踪对象库的版本历史。

创新互联是一家专业提供大连企业网站建设,专注与做网站、成都网站设计H5高端网站建设、小程序制作等业务。10年已为大连众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。

首先,git的hooks特性是指在特定事件发生之前或者之后执行特定脚本代码的功能(从概念上类比,与监听事件、触发器等类似)。特定事件既是指git执行的特定事件,如commit,push,recieve等,以下是常见的git事件:

  • applypatch-msg

  • pre-applypatch

  • post-applypatch

  • pre-commit

  • prepare-commit-msg

  • commit-msg

  • post-commit

  • pre-rebase

  • post-checkout

  • post-merge

  • pre-receive

  • update

  • post-receive

  • post-update

  • pre-auto-gc

  • post-rewrite

在本文中,我们要用到的事件是 pre-commit和post-merge。其配置方法如下:

一)第一种方式:默认hooks目录

每个git仓库下都包含有.git/hooks目录,里面就是放置hooks(脚本)的地方,当git事件执行时,相应的hooks(脚本)就会自动执行。

注意:

git事件对应的hooks的脚本文件名"必须"与事件列表名一样(默认.git/hooks下的事例都是以.sample结尾,使用时要去掉后缀),例如写pre-commit事件的hooks时,文件名必须是pre-commit,而不是pre-commit.sample。

二)第二种方式:自定义hooks目录

创建一个.gitconfig文件,里面指定hooks目录地址,然后使用.gitconfig的配置。例如:

  1. 在仓库根目录下创建.gitconfig文件,并包含如下内容:

[core]

    hooksPath=./libs/hooks

    2. 运行如下命令来引用.gitconfig

#git config --local include.path ../.gitconfig

为了方便使用,我已经在我的GitHub上面创建了Sample仓库,大家可以clone下来直接使用。里面根据第二种方式配置了两个脚本:pre-commit和post-merge,用来实现commit前自动将xx.tsr转换成xx.xml文件以便跟踪,以及当pull下来并且merge后,再将xx.xml文件转换成QTP可使用的xx.tsr文件。

Github地址:https://github.com/TaoismLEE/Sample.git

注意:

1. clone下来后,一定记得运行git config --local include.path ../.gitconfig来引用配置;

2. 初次将xx.tsr文件放于libs文件夹下。

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


标题名称:转换QTP对象库xx.tsr文件为xx.xml文件以便git跟踪-创新互联
转载注明:http://pwwzsj.com/article/dojcpp.html