青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 319, comments - 22, trackbacks - 0, articles - 11
  C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

搜索 
 對于  
V1_6_XcodeGuide  
在 Mac OS X 上 Xcode 使用谷歌測試框架指南 
部署階段
zhanyong...@gmail.com更新的2011 年 4 月 18 日

本指南將介紹如何在 Mac OS X 上的 Xcode 項(xiàng)目中使用谷歌測試框架。本教程開始快速解釋為有經(jīng)驗(yàn)的用戶做什么。快速起步后指南 》 都提供了進(jìn)一步的解釋每個步驟。

快速入門

這是快速指南在 Xcode 項(xiàng)目中使用谷歌測試。

  1. 使用此命令在網(wǎng)站下載源代碼: svn 簽出 http://googletest.googlecode.com/svn/trunk/ googletest 只讀
  2. 開放中的gtest.xcodeproj googletest-讀-只/xcode/目錄并生成 gtest.framework。
  3. 名為"UnitTests"類似 Xcode 項(xiàng)目中創(chuàng)建一個新的"殼工具"目標(biāo)
  4. 將 gtest.framework 添加到您的項(xiàng)目,并將其添加到"UnitTests"的"鏈接二進(jìn)制與圖書館"生成階段
  5. 添加您的單元測試的源代碼以"UnitTests"的"編譯來源"生成階段
  6. 編輯"UnitTests"可執(zhí)行文件并添加環(huán)境變量命名為"DYLD_FRAMEWORK_PATH"值等于框架包含 gtest.framework 相對于已編譯的可執(zhí)行文件的路徑。
  7. 生成并轉(zhuǎn)
以下各節(jié)進(jìn)一步解釋每個深度,更詳細(xì)地描述了如何完成它包括一些變化在上面列出的步驟。

獲取源

目前,此處討論的 gtest.framework 標(biāo)記的谷歌測試版本中不可用,只有在樹干。解釋在谷歌測試網(wǎng)站,你可以得到代碼從匿名 SVN 使用此命令:

svn checkout http://googletest.googlecode.com/svn/trunk/ googletest-read-only

或者,如果您正在使用顛覆您自己的代碼庫中,可以添加 Google Test 作為外部相關(guān)性顛覆資料庫。按照這種方法,簽出 svn 存儲庫,所有人都還將收到一份 Google 測試 (特定的版本,如果您愿意) 而不必顯式簽出。這一組的組成項(xiàng)目簡單并減少復(fù)制到存儲庫中的代碼。

若要使用svn:externals,決定要將具有外部源駐留。因?yàn)槟阆胍种У囊徊糠诌M(jìn)行發(fā)布時,您可以選擇把樹干內(nèi), 外部源。然而,把它稱為third-party/googletest/1.0.1類似的版本標(biāo)記的目錄中的樹干以外,是另一種選擇。一旦建立了位置,則使用svn propedit svn:externals _directory_ svn:externals 屬性設(shè)置對存儲庫中的目錄。此目錄不能包含的代碼,但它的版本控制的父目錄。

命令svn propedit將會出現(xiàn)你顛覆編輯器中,使編輯更簡單長,(可能多行) 的屬性。這同一種方法可用于檢查出標(biāo)記的分支,通過使用相應(yīng)的 URL (例如http://googletest.googlecode.com/svn/tags/release-1.0.1)。另外,svn:externals 屬性允許的特定修訂版的樹干與規(guī)范-r_ # # _選項(xiàng) (例如的外部對象/src/googletest-r60 http://googletest.googlecode.com/svn/trunk).

這里是一個項(xiàng)目 (閱讀通過svn propget) 樹干上使用 svn:externals 屬性的示例。此值將簽出到谷歌測試的副本主干/外部對象/src/googletest/目錄。

[Computer:svn] user$ svn propget svn:externals trunk
externals
/src/googletest http://googletest.googlecode.com/svn/trunk

向項(xiàng)目中添加框架

下一步是建立并將 gtest.framework 添加到您自己的項(xiàng)目。本指南描述了下面的兩種常用方法。

  • 選項(xiàng) 1 ---將谷歌測試添加到您自己的項(xiàng)目,最簡單的方法就是打開 gtest.xcodeproj (xcode 中發(fā)現(xiàn)谷歌測試樹干的目錄) 和手動構(gòu)建框架。然后,將生成的框架添加到您的項(xiàng)目使用"添加-> 現(xiàn)有框架 … …"從上下文菜單或"項(xiàng)目-> 添加..."從主菜單。Gtest.framework 是可重定位,并包含頁眉和您需要進(jìn)行測試的目標(biāo)代碼。此方法要求重建每次您升級谷歌測試您的項(xiàng)目中。
  • 選項(xiàng) 2 ---如果您打算將為生的谷歌測試樹干,其最新的功能納入您的單元測試 (或自己是谷歌測試開發(fā)人員)。你要重建框架,每次更新源。要這樣做,您需要將 gtest.xcodeproj 文件,框架本身,添加到您自己 Xcode 項(xiàng)目。然后,從生成產(chǎn)品項(xiàng)目的三角形發(fā)現(xiàn),您可以找到 gtest.framework,可以添加到你的目標(biāo) (以下討論)。

使測試目標(biāo)

要開始編寫測試,使新的"殼工具"目標(biāo)。此目標(biāo)模板是 BSD、 可可、 或碳下可用。添加您的單元測試的目標(biāo)"編譯來源"生成階段的源代碼。

接下來,你要在兩種不同方法中添加 gtest.framework,取決于哪個選項(xiàng)您選擇以上。

  • 選項(xiàng) 1 ---在編譯期間,Xcode 將需要知道您要鏈接對 gtest.framework。將 gtest.framework 添加到您的測試目標(biāo)的"鏈接二進(jìn)制與圖書館"生成階段。這將包括谷歌測試頭在標(biāo)題搜索路徑中,并將告訴鏈接器在哪里可以找到的庫。
  • 選項(xiàng) 2 ---如果您工作的樹干,你也要將 gtest.framework 添加到您的測試目標(biāo)的你"鏈接二進(jìn)制與圖書館"生成階段。此外,你要將 gtest.framework 作為依賴項(xiàng)添加到你的單元測試目標(biāo)。這種方式,Xcode 將確保該 gtest.framework 是到目前為止,每次您的構(gòu)建你的目標(biāo)。最后,如果你不使用谷歌測試共享生成目錄,你得將 gtest.framework 復(fù)制到您自己生成產(chǎn)品目錄,使用"運(yùn)行腳本"生成階段。

設(shè)置可執(zhí)行文件運(yùn)行環(huán)境

可執(zhí)行單元測試是殼的工具,因?yàn)樗鼪]有一捆,內(nèi)容/框架的目錄,在其中放置 gtest.framework。相反,必須在運(yùn)行時告訴動態(tài)鏈接器搜索中的另一個位置的框架。這可以通過在"編輯活動的可執(zhí)行文件..."中設(shè)置的"DYLD_FRAMEWORK_PATH"的環(huán)境變量參數(shù)選項(xiàng)卡,在"設(shè)置環(huán)境變量:"。此值的路徑是目錄的包含 gtest.framework 的路徑 (相對或絕對)。

如果您還沒有設(shè)置 DYLD_FRAMEWORK_PATH,正確,可能會得到這樣一條消息:

[Session started at 2008-08-15 06:23:57 -0600.]
  dyld
: Library not loaded: @loader_path/../Frameworks/gtest.framework/Versions/A/gtest
   
Referenced from: /Users/username/Documents/Sandbox/gtestSample/build/Debug/WidgetFrameworkTest
   
Reason: image not found

要正確這個問題,必須包含可執(zhí)行文件中指定的目錄"從引用:"上述錯誤消息中的值。然后,在此位置的終端,發(fā)現(xiàn)包含 gtest.framework 的目錄的相對路徑。這就是你需要設(shè)置為 DYLD_FRAMEWORK_PATH 的值。

生成并轉(zhuǎn)

現(xiàn)在,當(dāng)您單擊"生成走",將會執(zhí)行測試。傾倒出這樣的事:

[Session started at 2008-08-06 06:36:13 -0600.]
[==========] Running 2 tests from 1 test case.
[----------] Global test environment set-up.
[----------] 2 tests from WidgetInitializerTest
[ RUN      ] WidgetInitializerTest.TestConstructor
[       OK ] WidgetInitializerTest.TestConstructor
[ RUN      ] WidgetInitializerTest.TestConversion
[       OK ] WidgetInitializerTest.TestConversion
[----------] Global test environment tear-down
[==========] 2 tests from 1 test case ran.
[  PASSED  ] 2 tests.

The Debugger has exited with status 0.  

摘要

單元測試是有價(jià)值的方式,確保你的數(shù)據(jù)模型保持有效,即使在快速發(fā)展過程中或重構(gòu)。谷歌測試框架是偉大單元測試框架,C 和 c + + 于一體的與 Xcode 開發(fā)環(huán)境很好。

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲高清中文字幕| 99成人在线| 国产一区二区欧美| 99国产精品视频免费观看一公开| 久久xxxx| 一区二区三区**美女毛片| 一个色综合av| 亚洲精品视频免费观看| 欧美成ee人免费视频| 久久大逼视频| 国产欧美日韩中文字幕在线| 亚洲夜晚福利在线观看| 最近中文字幕mv在线一区二区三区四区 | 亚洲天堂成人在线视频| 欧美高清视频一区| 久久躁日日躁aaaaxxxx| 狠狠色综合日日| 久久久亚洲综合| 久久成人一区二区| 在线国产精品一区| 欧美 日韩 国产精品免费观看| 欧美一区在线视频| 激情小说亚洲一区| 亚洲国产精品va在线看黑人动漫| 免费观看日韩av| 亚洲欧洲综合另类在线| 亚洲精品视频在线观看免费| 欧美日韩亚洲视频| 午夜亚洲福利在线老司机| 日韩视频二区| 欧美丰满高潮xxxx喷水动漫| 日韩一区二区精品视频| 日韩视频免费| 国产欧美欧美| 一本色道久久综合亚洲91| 国产精品视频一二三| 亚洲国产精品一区二区三区| 雨宫琴音一区二区在线| 欧美一乱一性一交一视频| 欧美有码在线观看视频| 国产精品免费久久久久久| 一区二区三区欧美视频| 欧美中文字幕在线| 精品二区视频| 欧美激情视频一区二区三区不卡| 亚洲久久一区二区| 欧美中文字幕在线视频| 亚洲国产精品久久久久| 欧美日韩三级视频| 久久av在线看| 亚洲精品在线免费| 香蕉av福利精品导航| 国产欧美一区二区三区在线老狼 | 亚洲欧美大片| 国产午夜精品美女毛片视频| 久久精品国产久精国产爱| 国产亚洲一级高清| 久久久久久高潮国产精品视| 亚洲第一区在线观看| 亚洲国产成人精品久久| 国产日韩在线一区| 女同一区二区| 久久精品中文| 亚洲女同同性videoxma| 在线视频欧美一区| 亚洲国产精品悠悠久久琪琪| 欧美一区成人| 欧美日韩国产综合视频在线| 欧美在线精品免播放器视频| 亚洲成人影音| 狠狠爱综合网| 国产精品一区=区| 欧美1区3d| 欧美国产欧美亚州国产日韩mv天天看完整| 亚洲主播在线| 亚洲日本电影在线| 免费国产一区二区| 麻豆九一精品爱看视频在线观看免费| 亚洲少妇最新在线视频| 夜夜嗨av一区二区三区四区 | 六月丁香综合| 久久精品视频在线观看| 亚洲一区欧美二区| 亚洲一级网站| 99精品国产在热久久下载| 最新国产拍偷乱拍精品| 亚洲免费精彩视频| 日韩视频免费| 午夜精彩视频在线观看不卡 | 久久午夜电影| 亚洲福利在线视频| 亚洲色图在线视频| 麻豆91精品| 国产精品一区二区久久久| 在线播放豆国产99亚洲| 一区二区三区产品免费精品久久75 | 免费视频一区| 欧美特黄a级高清免费大片a级| 国产精品亚洲综合一区在线观看 | 最新中文字幕一区二区三区| 亚洲国产91色在线| 亚洲欧美视频| 亚洲国产欧美日韩| 欧美在线视频a| 欧美性猛交视频| 亚洲精品日日夜夜| 久久久.com| 午夜激情久久久| 欧美日韩精品在线视频| 亚洲第一在线视频| 欧美一区二区三区日韩视频| 欧美顶级艳妇交换群宴| 久久久久久欧美| 国产人成一区二区三区影院| 一片黄亚洲嫩模| 亚洲国内高清视频| 欧美国产欧美亚洲国产日韩mv天天看完整| 国产日韩精品电影| 小嫩嫩精品导航| 欧美中文字幕在线播放| 国产精品日韩精品欧美在线| 亚洲一二三区在线| aa级大片欧美三级| 欧美天堂亚洲电影院在线播放| 日韩亚洲成人av在线| a4yy欧美一区二区三区| 国产精品进线69影院| 午夜一区二区三区不卡视频| 亚洲影院污污.| 国产一区观看| 亚洲精品精选| 国产精品久久久久久久久免费 | 久久综合网络一区二区| 久久精品99国产精品| 国产一级精品aaaaa看| 欧美成人久久| 国产精品综合av一区二区国产馆| 亚洲一区免费视频| 亚洲一二三区在线观看| 久热精品视频在线免费观看| 欧美激情1区2区| 亚洲欧美日韩国产一区二区| 亚洲国产cao| 国产亚洲激情视频在线| 亚洲精品色婷婷福利天堂| 国产一区91| 一区二区免费看| 亚洲欧洲美洲综合色网| 欧美亚洲视频| 香蕉久久夜色精品| 欧美77777| 麻豆久久精品| 国产欧美日韩一区二区三区在线观看 | 一区二区毛片| 亚洲国语精品自产拍在线观看| 亚洲一区二区三区在线播放| 国产偷自视频区视频一区二区| 亚洲激情影视| 久久永久免费| 玖玖视频精品| 影音先锋另类| 亚洲在线播放电影| 亚洲视频在线看| 欧美—级高清免费播放| 久久久蜜臀国产一区二区| 国产亚洲欧美一区二区三区| 亚洲午夜精品17c| 91久久精品国产91久久性色| 另类av导航| 亚洲人成欧美中文字幕| 亚洲美女毛片| 欧美日韩日本视频| 久久精品国产第一区二区三区最新章节| 麻豆精品视频| 亚洲人成在线观看| 亚洲一区二区免费| 国产精品婷婷| 久久福利影视| 亚洲视频在线视频| 噜噜噜在线观看免费视频日韩| 亚洲第一精品在线| 99视频精品全国免费| 亚洲一区二区三区成人在线视频精品 | 久久婷婷综合激情| 亚洲乱码精品一二三四区日韩在线 | 久久久女女女女999久久| 黑人一区二区| 国产精品chinese| 久久综合给合| 午夜久久久久久| 日韩一级免费观看| 国产欧美在线视频| 麻豆精品传媒视频| 亚洲一区二区三区在线观看视频 | 麻豆91精品| 欧美亚洲一区| 欧美激情在线免费观看| 久久成人免费电影| 亚洲一区二区久久| 亚洲一区在线直播|