使用 Test Base 構建你的測試框架

2021-09-17 18:40:09 字數 2187 閱讀 6401

test::base是乙個資料驅動測試框架,能讓你更加容易地編寫你自己的測試框架。在學習test::base之前,你需要具有一點點的perl語言基礎。關於test::base的官方說明請移動到 test::base 官方文件。

首先你需要安裝perl,關於perl的安裝這裡不再詳細展開,一般的linux系統都預設有安裝,現在我們來安裝一下cpanm,這是乙個能夠從 cpan 中獲取、解包編譯和安裝模組,在安裝我們需要的模組test::base

$apt-get install cpanminus

$cpanm test::base

為了介紹一下如何使用test::base,現在假設我們寫乙個測試框架來簡單測試code段和verify段的**是否一致,學會了這個基本的結構,你就能編寫很多很複雜的測試用例,目錄結構如下所示:

|——lib

| |——test

| |——style

| |——baselib.pm

| |——util.pm

|——t

|——main.t

use lib 'lib';                       # 新增我們的庫路勁 lib,上面的 lib 資料夾

use test::style::baselib 'no_plan'; # 選擇 no_plan 表示沒有測試計畫

run_test(); # 執行程式自定義的入口函式

__data__

=== test 1: test1

--- code

local x = 1 --set x = 1

--- verify

local x = 1 -- set x = 1

=== test 2: test2

--- code

local x=1 -- set x = 1

--- verify

local x = 1 -- set x = 1

先講解一下上面的程式,__data__perl**中放置文字的地方。

文字區域是由block組成的。例如下面就是乙個block:

=== test 1: test1

--- code

local x = 1 --set x = 1

--- verify

local x = 1 -- set x = 1

package test::style::baselib;

# 注意!若要使用下面的模組需要用類似 cpanm test::base 這種方式來安裝。

use test::base -base;

use file::temp qw( tempfile ); # 建立臨時檔案的模組

use ipc::run (); # 此模組可以很好地執行我們的 shell 指令

use data::dumper;

# 匯出本檔案內的 run_test 函式,若沒有此行** main.t 將無法使用該函式。

our @export = qw(

run_test

);sub run_test()

}sub run_block($)

1;__end__

none

在與libt同一級目錄下執行:

prove -v t/main.t
或者

prove -v t/*
表示t目錄下所有檔案,若執行成功,則會列出來,若失敗,也會有提示。

若在使用test::base構建自己的測試框架的過程中遇到問題,歡迎交流!

使用python測測你的系統最多能建立多少個執行緒

使用python測測你的系統最多能建立多少個執行緒 2012 12 09 08 27 00 收藏 使用乙個迴圈,不斷的建立執行緒,直到出現異常,才通知它們。python真是個好東西。如下 usr bin env python coding gbk import threading import ti...

使用systemd來構建你的服務

systemd 服務是一種以 service 結尾的單元 unit 配置檔案,用於控制由systemd 控制或監視的程序。簡單說,用於後台以守護精靈 daemon 的形式執行程式。service檔案編寫簡單易用 可以自動維持程序存活 強大的功能,可以取代pm2 自動收集程序輸出的輸出 可以看到sys...

使用systemd來構建你的服務

systemd 服務是一種以 service 結尾的單元 unit 配置檔案,用於控制由systemd 控制或監視的程序。簡單說,用於後台以守護精靈 daemon 的形式執行程式。service檔案編寫簡單易用 可以自動維持程序存活 強大的功能,可以取代pm2 自動收集程序輸出的輸出 可以看到sys...