Unitils 使用指南 翻譯 模組系統

2021-08-25 07:15:57 字數 3416 閱讀 9525

1.1.1unitils模組

下面的嚮導檔案講述

unitils

的模組系統和所提供的模組。我們從解釋怎麼配置測試環境並將讓你的測試使用這些模組開始。子章節會深入的描述這些模組的功能。

1.1.1.1  

configuration 配置

對於任何乙個專案,

unitils

需要一些配置。預設情況下,有三個級別的配置,每個級別可以覆蓋前乙個配置。

1. 

unitils-defaults.properties:

預設配置檔案,在

unitils

自己的發布包中。

2. 

unitils.propertis:

包含專案範圍的配置

3. 

unitils-local.properites:

包含使用者規範配置

第乙個檔案,

unitils-defaults.properties

,包含預設值並且被打包在

unitils.jar.

你不需要改變這個檔案,不過你可以用來做參考,因為他包含了所有對

unitils

的可能配置

第二個檔案,unitils.propertis ,可以覆蓋預設配置,並且乙個專案中所有開發人員通用的配置都可以放在這裡。例如你的專案用到的資料庫配置都是一樣的,那麼你可以建立乙個unitils.properties檔案,他會覆蓋預設的驅動類和url屬性
database.driverclassname=oracle.jdbc.driver.oracledriver

database.url=jdbc:oracle:thin:@yourmachine:1521:your_db

這個檔案不是必須的,但是如果你新建了乙個,它應該被放在你專案的類路徑下。你可以檢視乙個包含了常用配置的模板檔案從這裡

unitils.properties

最後的檔案,

unitils-local.properties

,一樣是可選的,一般包含開發人員自己的特殊配置,而且會覆蓋專案配置的資訊。例如如果每個使用者自己的

unit-test

資料庫使用者不同,你可以建立乙個

unitils-local.properties

為每乙個使用者,包含自己的資料庫使用者名稱和密碼以及資料庫名。

database.username=john

database.password=secret

database.schemanames=test_john

unitils-local.propertis

檔案應該被放在使用者自己相應的資料夾(

system.getproperty(「user.home」)).

重用的配置模板你可以在這裡找到

unitils-local.properties

這個本地配置檔案名稱,你也可以自己定義。這樣你就可以為每個專案起個不同的名字。例如,你正在專案

1上使用

unitils

,並且你想在新開始的專案

2上使用。那麼在專案2的

unitls.properties

檔案增加如下屬性,讓專案2的

unitils

使用projecttwo-local.properties

作為使用者本地配置即可。

unitils.configuration.localfilename=projecttwo-local.properties
1.1.1.2  

讓你的測試使用

unitils

unitils

通過乙個測試監聽系統給測試類提供服務。首先需要讓你的專案可以使用

unitils

。你的類只需要繼承(間接)

unitils

基礎測試類就可以了。目前對主流的測試框架已經有基礎的類:

這裡有個例子,如果你使用的是

junit3

,那麼這樣便可以使用

unitils

了:

import org.unitils.unitilsjunit3;

public class mytest extends unitilsjunit3

通常你會建立自己的測試基類,裡面會包含一些測試類公用的方法,例如資料來源注入等,那麼就讓這裡基類從

unitils

基類繼承既可以。

當你使用

junit4

你也可以通過註解來實現從

unitils

基類的繼承

import org.junit.runner.runwith;

import org.unitils.unitilsjunit4testclassrunner;

@runwith(unitilsjunit4testclassrunner.class)

public class mytest

如果你不想從

unitils

基類來繼承,你也可以通過拷貝

unitils

基類的原始碼(如

unitilsjunit3

)來建立乙個自定義的父類,這個類你仍然可以從其他類來繼承,例如

spring

的abstractdependencyinjectionspringcontexttests

(junit3

測試類的子類)

1.1.1.3  

模組系統

在開始例子以前,我們先看看一些基本的概念和功能。

unitils

被設計成容易擴充套件新模組的系統。每個模組通過監聽測試的執**況來提供服務並在需要的時候觸發適當的動作。

unitils

提供的測試基類(

unitilsjunit3

,unitilsjunit4

,unitilstestng),

通過模組監聽系統和測試類聯絡起來。

如果需要你的測試類提供擴充套件的服務,這個機制提供了統一的方式,可以使用靈活的方式增加服務而不改變測試類的父類。增加新的服務是比較簡單的,就像增加乙個新的模組並註冊這個模組在

unitils

的配置檔案裡一樣。

目前,unitils

提供了如下的模組:

Python logging 模組使用指南

記錄日誌是追蹤事件的一種手段。通過新增日誌,開發者可以清楚地了解發生了哪些事件,包括出現了哪些錯誤。logging 模組提供了一系列便捷的函式,用於簡單的日誌記錄。它們分別是debug info warning error 和critical 下面是乙個非常簡單的示例 import logging ...

python中的random模組使用指南

random.random 用於生成乙個0到1的隨機符點數 0 n 1.0 random.uniform的函式原型為 random.uniform a,b 用於生成乙個指定範圍內的隨機符點數,兩個引數其中乙個是上限,乙個是下限。如果a b,則生成的隨機數n a n b。random.randint ...

Ubuntu apt 使用指南

起初gnu linux系統中只有.tar.gz。使用者必須自己編譯他們想使用的每乙個程式。在debian出現之後,人們認為有必要在系統中新增 一種機制用來管理安裝在計算機上的軟體包。人們將這套系統稱為dpkg。至此著名的 package 首次在gnu linux上出現。不久之後紅帽子也 開始著手建立...