rebar3內建了eunit和ct(common_test)測試執行器。通過遵循一些約定,您可以使用單個rebar3命令執行測試套件。
執行eunit測試非常簡單:
$ rebar3 eunit
如果要eunit:test/1使用自己的引數呼叫,可以使用rebar.config的eunit_tests欄位。該引數和在shell裡加的引數是等價的,文件在這裡。rebar3將盡力確保編譯測試中指定的任何模組並使其在**路徑上可用。
您還可以僅針對特定應用執行測試:
或僅適用於特定模組:
$ rebar3 eunit --module=a,b,c
或者對於特定的測試檔案:
$ rebar3 eunit --file=
"test/my_tests.erl"
或具體目錄:
$ rebar3 eunit --dir=
"test"
要執行common_test:
$ rebar3 ct
rebar3將檢視所有應用程式的test目錄,並編譯並執行任何名為的原始檔*_suite.erl。
要僅執行特定的測試:
$ rebar3 ct --suite=test/first_suite,test/second_suite
rebar3有乙個內建的common_test
執行器,支援大多數測試套件和common_test
選項。如果您的測試套件需要使用測試規範或覆蓋規格,請注意rebar3為每個配置檔案保留單獨的空間,因此,您可能需要調整路徑,以指向_build
下相關配置檔案目錄中的模組和目錄,以便它們按預期工作。如果需要使用不支援的common_test
選項,可以在由rebar3編譯過的beam目錄下使用以下命令執行common_test
$ ct_run -pa `rebar3 path`
...
設定選項,然後執行任何eunit或ct。或者,執行rebar3 eunit --cover或rebar3 ct --cover。
測試執行將生成覆蓋資料。之後執行rebar3 cover將生成**覆蓋率報告。
cover工具將會把.coverdata格式的報告儲存到對應空間的cover
目錄下,預設報告檔案的名字和任務相關,比如rebar3 ct --cover
對應ct.coverdata
而rebar3 eunit -cover
對應eunit.coverdata
。
額外引數--cover_export_name
可用於指定.coverdata檔案的名稱,例如,如果乙個專案有2套測試用例,測試用例test/suites1/和test/suites2:
$ rebar3 ct --dir test/suites1 --cover --cover_export_name=suites1===
> running common test suites...
...$ rebar3 ct --dir test/suites2 --cover --cover_export_name=suites2===
> running common test suites...
...$ ls _build/test/cover
cover.log suite1.coverdata suite2.coverdata
$ rebar3 cover --verbose===
> performing cover analysis...
|----------------------------|------------|
| module | coverage |
|----------------------------|------------||..
..| y% |
|----------------------------|------------|
| total | x% |
|----------------------------|------------|
coverage calculated from:
_build/test/cover/suites1.coverdata
_build/test/cover/suites2.coverdata
cover summary written to: _build/test/cover/index.html
Rebar3使用介紹(一)基礎用法
本文基本都是按照 git clone cd rebar3 bootstrap wget chmod x rebar3如果要在windows下使用的話,需要額外製作乙個rebar3.bat rebar3.cmd用來呼叫 echo off setlocal set rebarscript f0 escr...
python3爬蟲實踐(七) xpath介紹
1 什麼是 xpath 2 xpath 開發工具 3 xpath 語法 表示式描述 示例結果 nodename 選取此節點的所有節點 bookstore 選取 bookstore 下所有的子節點 如果是在最前面,代表從根節點擊取。否則選擇某節點下的某個節點 bookstore 選取根元素下所有的 b...
Xcode使用介紹之七 常用外掛程式
古人云 工欲善其事必先利其器 打造乙個強大的開發環境,是立即提公升自身戰鬥力的絕佳途徑!xcode雖然功能強大,但是借助一些輔助外掛程式可以極大的提公升開發效率。alcatraz是針對xcode的一款外掛程式管理器,通過alcatraz可以非常方便的管理外掛程式,包括安裝 刪除 公升級等操作。官方 ...