很久以來(lái)有的想法,給我們的產(chǎn)品開(kāi)發(fā)搭建一個(gè)集成的自動(dòng)測(cè)試框架。想達(dá)到的目標(biāo)有:
自動(dòng)從代碼庫(kù)抓取代碼 自動(dòng)Build、制作安裝包、并收集Debug Symbols 自動(dòng)發(fā)布 自動(dòng)安裝到目標(biāo)設(shè)備 自動(dòng)運(yùn)行測(cè)試用例、存儲(chǔ)測(cè)試結(jié)果 測(cè)試用例和測(cè)試結(jié)果
有點(diǎn)類似于Continuous Integration的概念但不完全相同。這么一個(gè)系統(tǒng)自己開(kāi)發(fā)顯然要花費(fèi)非常多時(shí)間,好的方法是利用現(xiàn)有的工具來(lái)搭建。一番研究下來(lái),發(fā)現(xiàn)Trac非常符合我的要求:免費(fèi)、開(kāi)源、跨平臺(tái)、輕量級(jí)、高度可擴(kuò)展,等等,這些特點(diǎn)我都非常喜歡。這篇文章記錄我在安裝、配置基于Trac的集成框架的一些經(jīng)驗(yàn)。在Python、 Trac方面我都接觸不久,理解有限,如果不妥之處請(qǐng)各位指出。
1.安裝Trac
我對(duì)Python、Trac、Apache、SVN這些開(kāi)源開(kāi)發(fā)工具都是初次接觸,為降低難度,從一開(kāi)始沒(méi)打算在Linux安裝,但還是走了不少?gòu)澛。開(kāi)始時(shí)嘗試用CollabNet SVN Server+Python+Trac+Apache,在和Trac集成時(shí)由于python和Apache的svn庫(kù)版本不一致放棄了。后來(lái)改用 Visual SVN Server+Trac,方便很多。Visual SVN Server安裝簡(jiǎn)單,集成了SVN和Apache,而且有基于GUI的管理界面。
安裝Visual SVN Server。新版本可在這里下載,我用的是1.6.3,集成了Apache 2.2.9和SVN 1.1.5。安裝十分簡(jiǎn)單,在Custom Setup頁(yè)面要做一些選擇,其余的一路Next。我的選擇是: 安裝路徑:默認(rèn) 代碼倉(cāng)庫(kù)路徑:D:"repos 服務(wù)端口:https 8443 驗(yàn)證方式:SVN驗(yàn)證 安裝完成啟動(dòng)Visual SVN Server管理界面,為項(xiàng)目建立用戶名和創(chuàng)建代碼倉(cāng)庫(kù): Repositories上右鍵“Create New Repository...",輸入項(xiàng)目名VMCEPC,勾上"Create default structure"。 Users上右鍵"Create User...",創(chuàng)建用戶名admin。
現(xiàn)在SVN Server搭建好了,用Web瀏覽器測(cè)試一下是否成功,在地址欄輸入:https://localhost:8443/svn/。注意后的斜杠是必要的。另外forefox 3.0.x似乎有點(diǎn)bug,不能為自制證書”add exception“,從因此如果SVN Server啟用了https,在firefox 3.0.x中是不能正常連接的。IE和firefox 3.1都沒(méi)問(wèn)題。
安裝Trac 0.11。由于沒(méi)有裝Python,Trac主頁(yè)上介紹的安裝方法不適用。好在Visual SVN Server網(wǎng)站提供了一個(gè)work around,詳細(xì)步驟看這里: 在這里下載Trac 0.11 for Visual SVN Server 把安裝包里的trac目錄加壓到C:Program FilesVisualSVN Server 創(chuàng)建目錄d: rac 為VMCEPC項(xiàng)目初始化trac環(huán)境,除了"Path to repository"要明確指定,其余可以全部用默認(rèn)設(shè)置,這些設(shè)置以后都可以改。在DOS窗口運(yùn)行命令: "C:Program FilesVisualSVN Server rac rac-admin.bat" d: racvmcepc initenv Project Name: VMCEPC Path to repository: d:
eposvmcepc 把a(bǔ)dmin加為trac admin,在DOS窗口運(yùn)行命令: "C:Program FilesVisualSVN Server rac rac-admin.bat" d: racvmcepc permission add admin TRAC_ADMIN 編輯C:Program FilesVisualSVN Serverhttpd-wrapper.bat,在文件開(kāi)始處添加一行:set PYTHONHOME=%~dp0Tracpython 在C:Program FilesVisualSVN Serverconfhttpd-custom.conf中加入這些設(shè)置: LoadModule python_module "trac/python/mod_python_so.pyd"
LoadModule authz_user_module bin/mod_authz_user.so
<Location /trac>
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir d: rac
PythonOption TracUriRoot /trac
AuthName "Trac"
AuthType Basic
AuthBasicProvider file
AuthUserFile "d:/repos/htpasswd"
Require valid-user
</Location>
這樣trac server搭好了。在瀏覽器中輸入地址:https://localhost:8443/trac/。如果看到有"Available Projects"列出說(shuō)明成功了。如果有錯(cuò)誤,可以打開(kāi)Windows的Event Viewer查看VisualSVN Server的日志信息。
另外如果想為多個(gè)項(xiàng)目配置trac,可以做一個(gè)通用的配置文件trac.ini,放到d: rac rac.ini,然后在具體項(xiàng)目的trac.ini文件里引用它:
# -*- coding: utf-8 -*-
[inherit]
plugins_dir = d: rac rac.ini
[project]
descr = Windows CE for VMWare
name = VMCEPC
[trac]
repository_dir = d:
eposvmcepc