檢視原始碼 通用測試發行說明

Common_Test 1.27.5

修正的錯誤與故障

  • 修正了一個錯誤,該錯誤導致 HTML 日誌中測試案例的執行時間總和有時會計算錯誤,且表格沒有完整列印。

    自有 ID:OTP-19284 輔助 ID:ERIERL-1093,PR-8909

Common_Test 1.27.4

修正的錯誤與故障

  • 透過此變更,cth_surefire hook 模組會處理跳過群組的群組路徑縮減。這修正了一個錯誤,該錯誤會在使用跳過群組後執行的群組中顯示不正確的群組路徑。

    自有 ID:OTP-19365 輔助 ID:ERIERL-1157,PR-9080

改進和新功能

  • 透過此變更,可以在 cth_conn_log 選項列表中指定 prefix 選項。此選項允許指定在原始日誌輸出中加入多少額外資訊。

    自有 ID:OTP-19293 輔助 ID:ERIERL-1139,PR-8924PR-8931

Common_Test 1.27.3

修正的錯誤與故障

  • 透過此變更,jquery 和 tablesorter 授權已新增至 COPYRIGHT 檔案。tablesorter 也更新至 2.32 版本。

    自有 ID:OTP-19265 輔助 ID:PR-8876

Common_Test 1.27.2

修正的錯誤與故障

  • 透過此變更,HTML 報告包含 jQuery 3.7.1 版本。

    自有 ID:OTP-19252 輔助 ID:PR-8858

Common_Test 1.27.1

修正的錯誤與故障

  • 指定群組和測試案例為空列表的群組,不再導致執行當機。

    自有 ID:OTP-19032 輔助 ID:PR-7919GH-4362

  • Common_Test 文件和類型規格已進行潤飾。

    自有 ID:OTP-19148 輔助 ID:PR-8516

  • 現在 erlerlcdialyzer 以及 Erlang/OTP 中包含的所有其他程式都提供手冊頁面。

    自有 ID:OTP-19201 輔助 ID:PR-8740

Common_Test 1.27

改進和新功能

  • 現在呼叫 ct:capture_start/0ct:capture_stop/0 是同步的,以確保所有輸出都已擷取。

    自有 ID:OTP-18658 輔助 ID:PR-7380

  • 現在可以在每個組態函式後反轉執行多個 hook 的順序。請參閱CTH 執行順序

    自有 ID:OTP-18682 輔助 ID:GH-7397PR-7496、ERIERL-43

  • 如果瀏覽器偏好,預設 CSS 現在會包含基本的深色模式處理。

    自有 ID:OTP-18761 輔助 ID:PR-7428

  • 已經將 -callback 屬性新增至 ct_suitect_hooks

    自有 ID:OTP-18781 輔助 ID:PR-7701

  • 現在可以設定內建的 cth_log_redirect hook,以使用 HTML 日誌取代終端機中的預設記錄器報告。

    自有 ID:OTP-18875 輔助 ID:PR-7891

  • 增強了 ct_property_test 框架的錯誤處理。

    自有 ID:OTP-18881 輔助 ID:PR-7824

  • 增強測試案例文件,清楚說明測試案例如何失敗。

    自有 ID:OTP-18892 輔助 ID:PR-7869

  • 現在測試原始碼中失敗的行會以彩色顯示,以便更容易在螢幕上找到。

    自有 ID:OTP-18898 輔助 ID:PR-7917

  • 已將函式規格和類型新增至所有公用 API 函式。

    自有 ID:OTP-18913

  • 文件已移轉為使用 Markdown 和 ExDoc。

    自有 ID:OTP-18955 輔助 ID:PR-8026

  • 現在索引頁面中包含套件執行經過的時間。

    自有 ID:OTP-18981 輔助 ID:GH-7972PR-8112

Common_Test 1.26.2.3

修正的錯誤與故障

  • 透過此變更,cth_surefire hook 模組會處理跳過群組的群組路徑縮減。這修正了一個錯誤,該錯誤會在使用跳過群組後執行的群組中顯示不正確的群組路徑。

    自有 ID:OTP-19365 輔助 ID:ERIERL-1157,PR-9080

Common_Test 1.26.2.2

改進和新功能

  • 透過此變更,可以在 cth_conn_log 選項列表中指定 prefix 選項。此選項允許指定在原始日誌輸出中加入多少額外資訊。

    自有 ID:OTP-19293 輔助 ID:ERIERL-1139,PR-8924,PR-8931

Common_Test 1.26.2.1

修正的錯誤與故障

  • 透過此變更,HTML 報告包含 jQuery 3.7.1 版本。

    自有 ID:OTP-19252 輔助 ID:PR-8858

  • 透過此變更,jquery 和 tablesorter 授權已新增至 COPYRIGHT 檔案。tablesorter 也更新至 2.32 版本。

    自有 ID:OTP-19265 輔助 ID:PR-8876

  • 修正了一個錯誤,該錯誤導致 HTML 日誌中測試案例的執行時間總和有時會計算錯誤,且表格沒有完整列印。

    自有 ID:OTP-19284 輔助 ID:ERIERL-1093,PR-8909

Common_Test 1.26.2

修正的錯誤與故障

  • 透過此變更,common_test 測試案例日誌檔案中的最後一欄已修改為現在顯示表格列中每個時間的總和,以及「經過時間」,也就是執行上述函式所花費的時鐘時間。「經過時間」與先前總計的時間相同。

    自有 ID:OTP-18960

Common_Test 1.26.1

修正的錯誤與故障

  • 修正 CT 如何尋找 Erlang/OTP 版本以進行相容性測試。此功能僅用於測試 Erlang/OTP。

    自有 ID:OTP-18932

Common_Test 1.26

修正的錯誤與故障

  • 透過此變更,當執行定義錯誤的群組的套件時,common_test 會傳回錯誤。

    *潛在的不相容性*

    自有 ID:OTP-18728 輔助 ID:PR-7487、PR-7674

  • 透過此變更,樣式表選項會套用至所有 HTML 報告頁面。

    自有 ID:OTP-18760

  • 將所有 <tt> HTML 標籤更新為 <code>。

    自有 ID:OTP-18799 輔助 ID:PR-7695

改進和新功能

  • 此變更修復了文件,因此不再建議使用歷史上已棄用的 ?config 巨集。

    自有 ID:OTP-18858 輔助 ID:PR-7825

Common_Test 1.25.1

修正的錯誤與故障

  • 透過此變更,ct_hooks 手冊會參考使用者指南中的 CTH 執行順序章節。

    自有 ID:OTP-14480 輔助 ID:ERIERL-43、OTP-11894、PR-7455

  • 透過此變更,在測試案例時間陷阱或連結的程序當機的情況下,來自 pre_end_per_testcase hook 的組態資料會傳遞至 post_end_per_testcase 回呼。

    自有 ID:OTP-18579 輔助 ID:GH-7119

  • 透過此變更,會移除 ct_run 中剩餘對不支援的 vts 工具的參考 (主要與文件和 ct_run 說明訊息有關)。

    自有 ID:OTP-18615 輔助 ID:PR-7234

  • 透過此變更,ct_telnet 中的提示搜尋功能會處理 Unicode 輸入。

    自有 ID:OTP-18664 輔助 ID:ERIERL-959

  • 擴充了有關如何使用 standard_iostandard_erroruser I/O 裝置的文件。

    新增了類型 io:standard_io/0io:standard:error/0io:user/0

    自有 ID: OTP-18676 輔助 ID: PR-7473 GH-7459

Common_Test 1.25

修正錯誤與故障

  • 此變更改進了 Common Test 文件 (CT 鉤子範例程式碼),並新增了帶有鉤子程式碼的 Emacs 骨架。

    自有 ID: OTP-18377 輔助 ID: PR-6437

改進與新功能

  • 更新 common_test 以更穩健的方式獲取舊版本,同時忽略目前版本。

    自有 ID: OTP-18259 輔助 ID: PR-5924

  • - 將 XML ct 模組文件重寫為 Erlang 類型,使 Dialyzer 能夠捕獲更精確的錯誤

    自有 ID: OTP-18340

  • 棄用 dbg:stop_clear/0,因為它只是 dbg:stop/0 的函數別名

    自有 ID: OTP-18478 輔助 ID: GH-6903

Common_Test 1.24.0.5

修正錯誤與故障

  • 透過此變更,cth_surefire hook 模組會處理跳過群組的群組路徑縮減。這修正了一個錯誤,該錯誤會在使用跳過群組後執行的群組中顯示不正確的群組路徑。

    自有 ID:OTP-19365 輔助 ID:ERIERL-1157,PR-9080

Common_Test 1.24.0.4

修正錯誤與故障

  • 透過此變更,HTML 報告包含 jQuery 3.7.1 版本。

    自有 ID:OTP-19252 輔助 ID:PR-8858

  • 透過此變更,jquery 和 tablesorter 授權已新增至 COPYRIGHT 檔案。tablesorter 也更新至 2.32 版本。

    自有 ID:OTP-19265 輔助 ID:PR-8876

  • 修正了一個錯誤,該錯誤導致 HTML 日誌中測試案例的執行時間總和有時會計算錯誤,且表格沒有完整列印。

    自有 ID:OTP-19284 輔助 ID:ERIERL-1093,PR-8909

Common_Test 1.24.0.3

修正錯誤與故障

  • 透過此變更,common_test 測試案例日誌檔案中的最後一欄已修改為現在顯示表格列中每個時間的總和,以及「經過時間」,也就是執行上述函式所花費的時鐘時間。「經過時間」與先前總計的時間相同。

    自有 ID:OTP-18960

Common_Test 1.24.0.2

修正錯誤與故障

  • 修正 CT 如何尋找 Erlang/OTP 版本以進行相容性測試。此功能僅用於測試 Erlang/OTP。

    自有 ID:OTP-18932

Common_Test 1.24.0.1

修正錯誤與故障

  • 透過此變更,ct_telnet 中的提示搜尋功能會處理 Unicode 輸入。

    自有 ID:OTP-18664 輔助 ID:ERIERL-959

Common_Test 1.24

改進與新功能

  • 將未記錄的巨集 CT_PEER/3 重新命名為 CT_PEER_REL/3

    自有 ID: OTP-18460

Common_Test 1.23.3

修正錯誤與故障

  • 將 cth_log_redirect 中 gen_server 呼叫的逾時時間變更為無限大

    自有 ID: OTP-18363 輔助 ID: ERIERL-879

Common_Test 1.23.2

修正錯誤與故障

  • 修正在舊版本上啟動對等節點時,如果編譯伺服器處於活動狀態,且目前的 Erlang 安裝路徑中包含非拉丁 1 字元的問題。

    自有 ID: OTP-18255 輔助 ID: PR-6314

Common_Test 1.23.1

修正錯誤與故障

  • 修正 cth_surefire,使其能夠處理未使用 debug_info 編譯的套件。此錯誤自 Erlang/OTP 25.0 起就存在。

    自有 ID: OTP-18208 輔助 ID: ERIERL-852 PR-6229

改進與新功能

  • Common Test 現在會保留 throws 的堆疊追蹤。

    自有 ID: OTP-18138 輔助 ID: GH-5719, PR-6029

Common_Test 1.23

修正錯誤與故障

  • 修正在執行平行測試案例時,如果同時使用一個或多個 ct 鉤子,會導致鉤子鎖定程序崩潰並在 ct 日誌中產生輸出的錯誤。

    自有 ID: OTP-17881 輔助 ID: PR-5581

改進與新功能

  • configure 腳本提供的輸入已調整為 autoconf 2.71。

    自有 ID: OTP-17414 輔助 ID: PR-4967

  • 移除未使用的和未記錄的追蹤器節點功能。

    自有 ID: OTP-17676 輔助 ID: PR-5021

  • 新模組 peer 取代了 slave 模組。slave 模組現在已被棄用,將在 OTP 27 中移除。

    peer 包含用於啟動 Erlang 節點的擴充且更穩健的 API。

    自有 ID: OTP-17720 輔助 ID: PR-5162

  • cth_surefire ct 鉤子已更新,可在 xml 輸出中包含已執行測試案例的檔案和行號。

    對於具有許多測試案例的測試執行,該鉤子的效能也得到了大幅改進。

    自有 ID: OTP-17882 輔助 ID: PR-5581

Common_Test 1.22.1.3

修正錯誤與故障

  • 透過此變更,common_test 測試案例日誌檔案中的最後一欄已修改為現在顯示表格列中每個時間的總和,以及「經過時間」,也就是執行上述函式所花費的時鐘時間。「經過時間」與先前總計的時間相同。

    自有 ID:OTP-18960

Common_Test 1.22.1.2

修正錯誤與故障

  • 修正 CT 如何尋找 Erlang/OTP 版本以進行相容性測試。此功能僅用於測試 Erlang/OTP。

    自有 ID:OTP-18932

Common_Test 1.22.1.1

修正錯誤與故障

  • 將 cth_log_redirect 中 gen_server 呼叫的逾時時間變更為無限大

    自有 ID: OTP-18363 輔助 ID: ERIERL-879

Common_Test 1.22.1

修正錯誤與故障

  • OTP 內部測試修正。

    自有 ID: OTP-17888

Common_Test 1.22

改進與新功能

  • 在此變更之前,群組處理語法含糊不清,且群組路徑也不支援測試規範。

    自有 ID: OTP-17664 輔助 ID: GH-5088, PR-5242

  • 在此變更之前,無法連結到 Common Test 日誌中的特定標頭條目。此變更在 HTML 測試日誌中新增了靠右對齊的錨點圖示。

    自有 ID: OTP-17790 輔助 ID: PR-5375

Common_Test 1.21

改進與新功能

  • 允許浮點數作為 multiply_timetraps 參數。

    自有 ID: OTP-17413 輔助 ID: PR-4767

  • 移除舊版 API 巨集和函數的使用。

    自有 ID: OTP-17632 輔助 ID: PR-5022

Common_Test 1.20.5

修正錯誤與故障

  • 在呼叫 ct_netconfc:create_subscription/* 之前收到的 NETCONF 通知會導致連線程序因 badarg 而失敗。現在會以與其他意外訊息相同的方式記錄意外通知。

    自有 ID: OTP-17506

改進與新功能

  • 新增 'receiver' 選項至 ct_netconfc

    允許在建立工作階段時指定傳入 NETCONF 通知的目的地。先前,create_subscription/* 的呼叫者成為目的地,但 RFC 5277 create-subscription 不再是唯一可以排序 NETCONF 通知的方式。

    自有 ID: OTP-17509

Common_Test 1.20.4

修正錯誤與故障

  • 已提交產生的 configure 腳本。

    自有 ID: OTP-17420 輔助 ID: OTP-17398, GH-4821

Common_Test 1.20.3

修正錯誤與故障

  • release_shell 選項與 spec 選項一起使用時,可能會崩潰。

    自有 ID: OTP-16940 輔助 ID: ERL-1335

改進與新功能

  • 已移除實驗性的 HiPE 應用程式,以及其他應用程式中所有相關的功能。

    *潛在的不相容性*

    自有 ID: OTP-16963

  • 已修正程式碼中符合底線前置變數的警告。

    自有 ID: OTP-17385 輔助 ID: OTP-17123

Common_Test 1.20.2.3

修正錯誤與故障

  • OTP 內部測試修正。

    自有 ID: OTP-17888

Common_Test 1.20.2.2

修正錯誤與故障

  • 在呼叫 ct_netconfc:create_subscription/* 之前收到的 NETCONF 通知會導致連線程序因 badarg 而失敗。現在會以與其他意外訊息相同的方式記錄意外通知。

    自有 ID: OTP-17506

改進與新功能

  • 新增 'receiver' 選項至 ct_netconfc

    允許在建立工作階段時指定傳入 NETCONF 通知的目的地。先前,create_subscription/* 的呼叫者成為目的地,但 RFC 5277 create-subscription 不再是唯一可以排序 NETCONF 通知的方式。

    自有 ID: OTP-17509

Common_Test 1.20.2.1

修正錯誤與故障

  • 已提交產生的 configure 腳本。

    自有 ID: OTP-17420 輔助 ID: OTP-17398, GH-4821

Common_Test 1.20.2

修正錯誤和故障

  • 在此變更之前,如果跳過子群組,則 Config 會在測試群組之間洩漏 (GH-3480)。

    自有 ID:OTP-17347 輔助 ID:GH-3480, ERL-1439

Common_Test 1.20.1

修正錯誤和故障

  • 競爭條件可能導致 ctnetconfc:open/ 傳回功能失常的句柄,從而在對其調用其他 API 函數時產生錯誤,並且無法與相關伺服器建立新的連線。在模組 ct_ssh 和 ct_telnet 中使用 open/_ 也可能出現類似的症狀。

    在模組 ct_netconfc 和 ct_ssh 中調用 call/* 時,逾時後 common_test 程序的內部訊息可能會留在呼叫者的訊息佇列中。模組 ct_telnet 使用的內部程序可能會因遺失的訊息而洩漏記憶體。

    如果與伺服器的 TCP 連線中斷,則對 ct_telnet:open/* 和 ct_telnet:get_data/1 的呼叫可能會無限期地掛起。

    自有 ID:OTP-17328 輔助 ID:ERIERL-631

Common_Test 1.20

改進和新功能

  • 各種位址清除器支援。

    自有 ID:OTP-16959 輔助 ID:PR-2965

Common_Test 1.19.1

改進和新功能

  • 為測試套件新增行為

    自有 ID:OTP-17070

Common_Test 1.19

改進和新功能

  • 當使用者不希望 ct_property_test 編譯屬性時,會新增 ct_property_test:init_tool/1 函數。init_tool/1 可用於設定 property_test_tool 設定值。

    自有 ID:OTP-16029 輔助 ID:PR-2145

  • 內建的 Common Test Hook,cth_log_redirect,已更新為使用系統 default Logger 處理常式的設定,而非其自身的設定。請參閱 Common Test 使用者指南中關於內建 Hook的章節。

    自有 ID:OTP-16273

  • 舊版舊版 Crypto API中已棄用的函數呼叫會被其替代品的呼叫取代。

    自有 ID:OTP-16346

Common_Test 1.18.2.2

修正錯誤和故障

  • OTP 內部測試修正。

    自有 ID: OTP-17888

Common_Test 1.18.2.1

修正錯誤和故障

  • 已提交產生的 configure 腳本。

    自有 ID: OTP-17420 輔助 ID: OTP-17398, GH-4821

Common_Test 1.18.2

改進和新功能

  • 說明 incl_apps cover 選項

    自有 ID:OTP-16039 輔助 ID:ERL-795

  • ct_property_test 現在具有用於狀態測試結果的報告函數。

    自有 ID:OTP-16340

  • 不要隱藏使用者的錯誤原因

    自有 ID:OTP-16364 輔助 ID:PR-2480

Common_Test 1.18.1

改進和新功能

  • 改進了 ct_property_test 的記錄功能。

    自有 ID:OTP-16287

Common_Test 1.18

修正錯誤和故障

  • 如果在測試套件中的 suite/0 函數中安裝了 ct hook,則會多次呼叫 hook 的 terminate/1 函數,而不會先呼叫其 init/2 函數。現在已修正此問題。

    自有 ID:OTP-15863 輔助 ID:ERIERL-370

  • 如果 init_per_testcase 失敗,則會跳過測試本身。根據文件,應該可以在 hook 函數中將結果變更為失敗。在這種情況下,唯一可用的 hook 函數是 post_init_per_testcase,但是變更那裡的傳回值不會影響測試案例的結果。現在已修正此問題。

    自有 ID:OTP-15869 輔助 ID:ERIERL-350

改進和新功能

  • 為 NETCONF 1.1 (RFC 6241) 新增 ct_netconfc 支援。1.1 基礎功能可以發送到 hello,並且當用戶端和伺服器都聲明支援 1.1 時,會套用 RFC 6242 分塊架構。

    自有 ID:OTP-15789

  • 更正傳遞給函數 upgrade_init/2、upgrade_upgraded/2 和 upgrade_downgraded/2 中 ct_release_test 回呼模組的 common_tests 不透明資料結構中的 lib_dir 路徑。不正確的路徑可能會在偵錯時造成混淆,儘管它不會導致 common_test 方面有任何不正確的行為,因為目前未使用它。

    自有 ID:OTP-15934

Common_Test 1.17.3

修正錯誤和故障

  • 已將所有不正確 (即,所有) 使用 "can not" 的情況更正為原始碼註解、文件、範例等等中的 "cannot"。

    自有 ID:OTP-14282 輔助 ID:PR-1891

改進和新功能

  • 使用 ssh 而非 rsh 作為預設遠端 Shell。

    自有 ID:OTP-15633 輔助 ID:PR-1787

Common_Test 1.17.2.1

修正錯誤和故障

  • 如果在測試套件中的 suite/0 函數中安裝了 ct hook,則會多次呼叫 hook 的 terminate/1 函數,而不會先呼叫其 init/2 函數。現在已修正此問題。

    自有 ID:OTP-15863 輔助 ID:ERIERL-370

  • 如果 init_per_testcase 失敗,則會跳過測試本身。根據文件,應該可以在 hook 函數中將結果變更為失敗。在這種情況下,唯一可用的 hook 函數是 post_init_per_testcase,但是變更那裡的傳回值不會影響測試案例的結果。現在已修正此問題。

    自有 ID:OTP-15869 輔助 ID:ERIERL-350

Common_Test 1.17.2

修正錯誤和故障

  • hook 函數失敗時的測試結果通常與 hook 關聯的函數失敗時的測試結果相同。例如,如果 post_init_per_testcase 失敗,則結果是跳過測試案例,就像 init_per_testcase 失敗一樣。但是,對於 timetrap 逾時或其他 hook 函數執行所在的程序被終止的錯誤情況,先前並非如此。現在已修正此問題,因此無論 hook 函數如何失敗,錯誤處理都應相同。

    *潛在的不相容性*

    自有 ID:OTP-15717 輔助 ID:ERIERL-334

  • 在某些罕見的情況下,當兩個 common_test 節點使用相同的記錄目錄時,可能會發生計時問題,導致 common_test 因為其記錄快取檔案意外為空而當機。現在已修正此問題。

    自有 ID:OTP-15758 輔助 ID:ERIERL-342

改進和新功能

  • 引入了兩個新的 common_test hook 函數

    post_groups/2,在 Suite:groups/0 之後呼叫
    post_all/3,在 Suite:all/0 之後呼叫

    這些函數允許修改 groups/0all/0 函數的傳回值。

    現在還允許從 all/0 傳回新的詞彙 {testcase,TestCase,RepeatProperties}。這可以用於將單個測試案例重複特定次數,或者直到它失敗或成功一次。

    自有 ID:OTP-14746 輔助 ID:ERIERL-143

Common_Test 1.17.1

改進和新功能

  • OTP 內部測試改進。

    自有 ID:OTP-15716

Common_Test 1.17

修正錯誤和故障

  • 如果輸入參數 KeyOrFile{key,string()},則一個錯誤會導致 ct:encrypt_config_file/3ct:decrypt_config_file/3 失敗並顯示 badmatch。現在已修正此問題。

    自有 ID:OTP-15540

  • 無法透過從 post_end_per_testcase hook 函數傳回 {fail,Reason} 來修改在 end_per_testcase 中因 timetrap 逾時而失敗的測試案例的狀態。現在已修正此問題。

    自有 ID:OTP-15584 輔助 ID:ERIERL-282

改進和新功能

  • 新增了 ct_telnet:cmd/3ct_telnet:send/3newline 選項的新變體,允許指定要附加為命令換行符號的字串。預設值為 "\n",但在某些情況下,需要使用 "\r\n",此選項允許使用。

    先前,作為參數提供給 ct_telnet:expect/2,3 的錯誤正規表示式會當機,並且看起來像是 common_test 中的內部錯誤。現在提供了更好的錯誤指示,但測試案例仍然會失敗。

    自有 ID:OTP-15229 輔助 ID:ERIERL-203

  • 由於 yang RFC 允許在 edit-config 元素中有多個 config 資料的頂層元素,因此 ct_netconfc:edit_config/3,4,5 現在可以接受 XML 元素的列表。

    自有 ID:OTP-15298

Common_Test 1.16.1

修正錯誤與故障

  • Logger 處理器 cth_log_redirect 先前會在呼叫記錄器格式化器之前呼叫回報回呼 (report_cb)。在某些情況下,這會失敗,因為 cth_log_redirect 無法處理具有兩個參數的回報回呼。現在已修正此問題,因此只有格式化器會呼叫回報回呼。

    自有 ID:OTP-15307

Common_Test 1.16

改進與新功能

  • 使用編譯器選項 nowarn_export_all 在自動編譯測試套件時停用 export_all 警告。

    自有 ID:OTP-14810

  • 使用 uri_string 模組取代 http_uri。

    自有 ID:OTP-14902

Common_Test 1.15.4.4

改進與新功能

  • 改進了 ct_property_test 的記錄功能。

    自有 ID:OTP-16287

Common_Test 1.15.4.3

修正錯誤與故障

  • 如果在測試套件中的 suite/0 函數中安裝了 ct hook,則會多次呼叫 hook 的 terminate/1 函數,而不會先呼叫其 init/2 函數。現在已修正此問題。

    自有 ID:OTP-15863 輔助 ID:ERIERL-370

  • 如果 init_per_testcase 失敗,則會跳過測試本身。根據文件,應該可以在 hook 函數中將結果變更為失敗。在這種情況下,唯一可用的 hook 函數是 post_init_per_testcase,但是變更那裡的傳回值不會影響測試案例的結果。現在已修正此問題。

    自有 ID:OTP-15869 輔助 ID:ERIERL-350

Common_Test 1.15.4.2

修正錯誤與故障

  • hook 函數失敗時的測試結果通常與 hook 關聯的函數失敗時的測試結果相同。例如,如果 post_init_per_testcase 失敗,則結果是跳過測試案例,就像 init_per_testcase 失敗一樣。但是,對於 timetrap 逾時或其他 hook 函數執行所在的程序被終止的錯誤情況,先前並非如此。現在已修正此問題,因此無論 hook 函數如何失敗,錯誤處理都應相同。

    *潛在的不相容性*

    自有 ID:OTP-15717 輔助 ID:ERIERL-334

  • 在某些罕見的情況下,當兩個 common_test 節點使用相同的記錄目錄時,可能會發生計時問題,導致 common_test 因為其記錄快取檔案意外為空而當機。現在已修正此問題。

    自有 ID:OTP-15758 輔助 ID:ERIERL-342

改進與新功能

  • 引入了兩個新的 common_test hook 函數

    post_groups/2,在 Suite:groups/0 之後呼叫
    post_all/3,在 Suite:all/0 之後呼叫

    這些函數允許修改 groups/0all/0 函數的傳回值。

    現在還允許從 all/0 傳回新的詞彙 {testcase,TestCase,RepeatProperties}。這可以用於將單個測試案例重複特定次數,或者直到它失敗或成功一次。

    自有 ID:OTP-14746 輔助 ID:ERIERL-143

  • OTP 內部測試改進。

    自有 ID:OTP-15716

Common_Test 1.15.4.1

修正錯誤與故障

  • 無法透過從 post_end_per_testcase hook 函數傳回 {fail,Reason} 來修改在 end_per_testcase 中因 timetrap 逾時而失敗的測試案例的狀態。現在已修正此問題。

    自有 ID:OTP-15584 輔助 ID:ERIERL-282

Common_Test 1.15.4.0.1

修正錯誤與故障

  • 無法透過從 post_end_per_testcase hook 函數傳回 {fail,Reason} 來修改在 end_per_testcase 中因 timetrap 逾時而失敗的測試案例的狀態。現在已修正此問題。

    自有 ID:OTP-15584 輔助 ID:ERIERL-282

Common_Test 1.15.4

修正錯誤與故障

  • 修正測試規格中 'skip_groups' 與 'all suites' 選項組合的問題。

    自有 ID:OTP-14953

Common_Test 1.15.3

改進與新功能

  • 新增函式 ct:remaining_test_procs/0,會傳回在呼叫時仍在執行的測試與群組領導者程序的識別資訊。

    自有 ID:OTP-13832

  • 現在每個測試索引頁面的頁尾都會顯示「最新測試結果」連結,該連結會跳轉至最近產生的測試索引。這對於在測試執行之間快速比較結果,而無需遍歷記錄檔樹狀結構非常有用。

    自有 ID:OTP-14281

Common_Test 1.15.2

改進與新功能

  • 一般 Unicode 改進。

    自有 ID:OTP-14462

Common_Test 1.15.1

修正錯誤與故障

  • 在 OTP-20.0 中,c、make 和 ct_make 的行為已變更,在某些情況下,預設會將 beam 檔案寫入找到原始碼檔案的目錄。現在已將此改回舊行為,因此預設會將 beam 檔案寫入目前目錄。

    自有 ID:OTP-14489 輔助 ID:ERL-438

Common_Test 1.15

修正錯誤與故障

  • 已更正使用者 HTML 樣式表的說明文件中的錯誤。

    自有 ID:OTP-14332 輔助 ID:seq13299

  • 內部程式碼變更:呼叫 catch 後接呼叫 erlang:get_stacktrace/0 已重寫為使用 try 取代 catch,以使程式碼具有未來性。

    自有 ID:OTP-14400

改進與新功能

  • 現在 ct_slave 模組的處理節點名稱的方式與傳遞給 -sname 的節點名稱相同。這表示現在 ct_slave:start('b@127.0.0.1'). 可以運作。

    自有 ID:OTP-13806

  • 新增新選項 keep_logs。如果將此選項的值設定為整數 N,則 common_test 會移除目前記錄目錄中的所有 ct_run.* 目錄,但最新的 N 個除外。

    自有 ID:OTP-14179

  • 現有的 ct_netconfc:open/1,2 會使用一個 SSH 通道開啟 SSH 連線,以實現一個 Netconf 會話。為了允許測試同一個 SSH 連線上的多個會話,將以下函式新增至 ct_netconfc

    * connect/1,2 - 建立 SSH 連線 disconnect/1 - 關閉指定的 SSH 連線 session/1,2,3 - 在指定的連線上開啟 SSH 通道,並傳送 'hello' 以啟動 Netconf 會話

    自有 ID:OTP-14284

  • 由於包含任意 Unicode 字元的原子而進行的雜項更新。

    自有 ID:OTP-14285

  • 新增函式 ct_ssh:shell/2,3。

    自有 ID:OTP-14415 輔助 ID:seq13315

Common_Test 1.14

修正錯誤與故障

  • 在 common_test 勾點處理中完成下列更正與改進

    • 新增額外引數 Suite 作為下列每個勾點回呼函式的第一個引數

      • pre_init_per_group
      • post_init_per_group
      • pre_end_per_group
      • post_end_per_group
      • pre_init_per_testcase
      • post_init_per_testcase
      • pre_end_per_testcase
      • post_end_per_testcase
      • on_tc_fail
      • on_tc_skip

      為了回溯相容性,如果未從勾點回呼模組匯出新函式,common_test 將會回復為舊介面,並在不使用 Suite 引數的情況下呼叫函式。

    • 如果存在 init_per_suiteend_per_suite 其中一個,但另一個不存在,則會將不存在的函式回報為測試記錄中理由為 undef 的失敗。對於 init/end_per_group 也是如此。根據使用者指南,這一直都是一項要求,但現在 common_test 在報告中更加明確。

    • 如果從測試套件匯出 init_per_suite,但未匯出 end_per_suite,則會使用 Suite=ct_framework 而不是正確的套件名稱來呼叫 pre/post_end_per_suite。現在已修正此問題。

    • 如果從套件匯出 end_per_group,但未匯出 init_per_group,則永遠不會呼叫 end_per_group。現在已修正此問題。

    • 在呼叫 pre_init_per_* 之前略過的測試會收到對應 post_init_per_* 的錯誤呼叫。例如,如果因為 suite/0 失敗而略過測試,則即使未呼叫 pre_init_per_suiteinit_per_suite,也會呼叫 post_init_per_suite。現在已修正此問題,因此除非先呼叫對應的 pre_* 回呼,否則永遠不會呼叫 post_* 回呼。

    • init_per_testcase 之前或之中略過的測試會收到對 pre_end_per_testcasepost_end_per_testcase 的錯誤呼叫。現在已修正此問題,因此當未呼叫 end_per_testcase 時,不會呼叫 pre/post_end_per_testcase

    • 如果結束訊號導致測試案例程序在執行 init_per_testcase 時終止,則案例先前會回報為失敗,理由為 {skip,...}。現在已修正此問題,因此案例會標示為略過。

    • 如果結束訊號導致測試案例程序在執行 end_per_testcase 時終止,則案例先前會標示為失敗。現在已修正此問題,因此測試案例的狀態不會變更,只會在註解欄位中新增警告。

    • 如果因為選項 {force_stop,skip_rest} 或因為失敗的序列而略過測試案例,則不會傳送 tc_start 事件,只會傳送 tc_done。現在已修正此問題,因此會傳送這兩個事件。

    • 當在設定函式中略過或失敗時,設定函式本身會在勾點回呼 on_tc_skipon_tc_fail 中取得 {auto_skipped,Reason}{skipped,Reason}{failed,Reason}。因此而略過的其他測試案例只會在 on_tc_skip 中取得 Reason。現在已修正此問題,因此即使是導致略過/失敗的設定函式,也只會在勾點回呼中取得 Reason

    自有 ID:OTP-10599 輔助 ID:kunagi-344 [255]

  • 當測試案例因為測試規格中的 skip_cases 陳述式而略過時,cth_surefire 會錯誤地將上一個測試案例標示為 xml 報告中的略過。實際略過的測試案例根本不會出現在 xml 報告中。現在已修正此問題。

    自有 ID:OTP-14129 輔助 ID:seq13244

  • multiply_timetrapsscale_timetraps 選項無法與測試規格搭配使用,此問題已修正。

    自有 ID:OTP-14210

改進與新功能

  • 新增 ct_testspec:get_tests/1。rebar3 會使用此函式來取得從 testspec 執行測試時必須編譯的所有目錄,而不是在 rebar3 中實作 testspec 剖析。

    自有 ID:OTP-14132

Common_Test 1.13

修正錯誤與故障

  • 測試執行期間對螢幕的一些列印輸出 (包括 ct:print/1,2,3,4) 會使用本機 user 程序作為 IO 裝置,而且當透過遠端節點上的 Shell 執行測試時,這些列印輸出將會無法看到。為了解決此問題,已導入預設 Common Test 群組領導者程序。此程序會將列印輸出路由傳送至起始程序的群組領導者 (如果有的話),否則會路由傳送至 user

    自有 ID:OTP-13973 輔助 ID:ERL-279

  • 一些充當測試案例 I/O 群組領導者的 Common Test 程序,並不會在測試執行結束時如預期終止。此錯誤已修正。

    自有 ID:OTP-14026 輔助 ID:ERL-287

  • 記錄詳細程度的功能文件說明不正確。例如,測試執行的預設詳細程度層級並非 50 (?STD_VERBOSITY),而是 100 (?MAX_VERBOSITY)。此外,部分範例存在錯誤和瑕疵。《使用者指南》中對應的章節 (5.18) 已更新。

    自有 ID:OTP-14044 輔助 ID:seq13223

改進和新功能

  • 新增一項功能,讓使用者可以指定記錄輸出的標題。標題在 ct:pal/3,4,5ct:print/3,4,5ct:log/3,4,5Opts 列表引數中以 {heading,string()} 形式指定。如果省略標題選項,則會改用類別名稱或 "User" 作為標題。

    自有 ID:OTP-14043 輔助 ID:seq13226

Common_Test 1.12.3

已修正的錯誤和故障

  • 如果 telnet 伺服器在終止該行之前,於傳輸文字行時暫停,則 ct_telnet:expect/3 函式會在測試案例 HTML 記錄中將該行列印兩次。此問題已修正。

    自有 ID:OTP-13730 輔助 ID:seq13135

  • 新增函式 ct:set_verbosity/2ct:get_verbosity/1,以便測試案例、CT 勾點或測試框架函式可以修改和讀取記錄的詳細程度層級。

    自有 ID:OTP-13841

  • 如果 Erlang 原始檔包含 -warning() 指示詞,make (tools) 和 ct_make (common_test) 會當機。

    自有 ID:OTP-13855

Common_Test 1.12.2

已修正的錯誤和故障

  • common_test.app.src 中缺少下列模組:ct_groups、ct_property_test、ct_release_test、ct_webtool、ct_webtool_sup、test_server_gl。現在已新增這些模組。

    自有 ID:OTP-13475

  • Common Test 列印的接收錯誤報告的時間戳記不正確。

    自有 ID:OTP-13615 輔助 ID:seq13124

Common_Test 1.12.1

已修正的錯誤和故障

  • Common Test telnet 用戶端開啟的 socket 預設會啟用 nodelay 選項 (true)。這似乎導致某些系統上的 telnet 伺服器發生通訊問題,因此不再使用此選項。您可以在 telnet 連線設定中指定其值。如需詳細資訊,請參閱 ct_telnet 的手冊頁。請注意,unix_telnet 中的介面函式 connect 已更新為具有額外的引數,現在是 unix_telnet:connect/7

    自有 ID:OTP-13462 輔助 ID:seq13077

  • 修正 cth_surefire 中的錯誤:當 pre_init_per_suite 勾點在到達 cth_surefire:pre_init_per_suite 之前失敗時,cth_surefire 會產生不正確的 XML。

    自有 ID:OTP-13513

  • 已更新 ct:get_timetrap_info/0 函式,以傳回更多關於 timetrap 縮放的資訊。

    自有 ID:OTP-13535

  • 已修正 Common Test 不正確地逸出樣式表 HTML 標籤的問題。

    自有 ID:OTP-13536

  • 已導入 ct_run 啟動旗標 -no_esc_charsct:run_test/1 啟動選項 {esc_chars,Bool},以便停用字元的自動逸出。在 Common Test 1.12 中導入自動逸出以 io:format/1,2ct:pal/1,2,3,4 列印的特殊 HTML 字元。新的旗標/選項可用於基於向後相容性原因而停用此功能。(測試規格中也支援此選項)。

    自有 ID:OTP-13537

Common_Test 1.12

已修正的錯誤和故障

  • 此更新修正 HTML 記錄檔中一般輸出未逸出特殊字元的問題。現在會自動逸出使用 io:format/2ct:pal/2 進行的輸出中的特殊字元。Common Test 不會嘗試逸出使用 ct:log/2 列印的字元,因為假設使用者可能想要使用此函式列印 HTML 標記的資料。已新增新的函式 ct:log/5,其提供字元的選擇性逸出。後者函式也可用於將文字列印到記錄中,而沒有標頭和 CSS 類別包裝 (類似於 io:format/2)。

    自有 ID:OTP-13003 輔助 ID:seq13005

  • Commit 4cf832f1ad163f5b25dd8a6f2d314c169c23c82f 錯誤地移除 netconf 連線開啟和關閉的記錄。現在已修正此問題。

    自有 ID:OTP-13386

  • 使用 test_server:start_node/3 啟動的節點寫入其 erl_crash.dump 的目錄已變更。先前的損毀傾印檔會寫入 test_server.beam 的目錄,但在較新版本的 Microsoft Windows 中,該目錄已不再可寫入 (即使是管理員也是如此)。現在改為使用框架 (common_test) 記錄目錄。

    自有 ID:OTP-13388

改進和新功能

  • 此更新讓您可以在一個測試規格詞彙中指定同一個群組或測試案例的多個實例,以便重複執行。範例:{groups, "./", my_SUITE, [my_group, my_group], {cases, all}}{cases, "./", my_SUITE, [my_tc, my_tc, my_tc]}

    自有 ID:OTP-13241 輔助 ID:seq12979

  • 新增兩個新的 CT 勾點函式:post_init_per_testcase/4pre_end_per_testcase/3。透過這些勾點函式,可以在執行測試案例之前和之後立即執行任意動作 (包括修改測試執行、測試狀態和結果)。

    自有 ID:OTP-13242 輔助 ID:seq12991

  • 先前 ct_netconfc 對於使用者可以設定哪些 SSH 選項非常嚴格。現在已變更,並允許使用任何 SSH 選項。netconf 用戶端只會將任何無法辨識的選項傳遞給 SSH。

    自有 ID:OTP-13338 輔助 ID:seq13053、seq13069

Common_Test 1.11.2

已修正的錯誤和故障

  • 如果 ssh 封包包含多個 netconf 結束標籤,則永遠不會在 ct_netconfc:handle_data 中偵測到第二個結束標籤。相反地,它會包含在提供給 xmerl 剖析器的 XML 資料中,然後剖析器會失敗。此問題是由 OTP-13007 引入,現在已修正。

    自有 ID:OTP-13323

Common_Test 1.11.1

已修正的錯誤和故障

  • 當來自 netconf 伺服器的資料分割成許多 ssh 封包時,netconf 用戶端的效能非常差。現在已改善此問題。

    自有 ID:OTP-13007

  • 在 ct_netconfc 中,如果計時器在伺服器傳送 rpc-reply「同時」過期,則當用戶端從其「擱置」清單中移除計時器參考時,逾時訊息可能已經在用戶端的訊息佇列中。這會在用戶端中造成當機,因為在處理逾時訊息時找不到計時器參考。現在已透過在取消計時器時永遠從訊息佇列中清除逾時訊息來修正此問題。

    自有 ID:OTP-13008

  • 錯誤記錄處理常式 ct_conn_log_h 未遵循 'silent' 選項,並嘗試列印到未定義的檔案描述器。此問題已修正。

    自有 ID:OTP-13035

  • 如果使用者在測試套件編譯失敗後讓測試繼續執行,Common Test 未如預期地將結束狀態設定為表示失敗。此問題已修正。此外,即使存在對 stdin/stdout 的存取,'abort_if_missing_suites' 選項現在也會讓 Common Test 中止測試執行,而不會在編譯失敗時詢問使用者。

    自有 ID:OTP-13173 輔助 ID:seq12978

  • 若將 Common Test 的 'create_priv_dir' 啟動選項設定為 'auto_per_tc',組態函式的 priv 目錄名稱可能會與測試案例的 priv 目錄名稱衝突,這會導致 Test Server 失敗。此錯誤已修正。

    自有 ID:OTP-13181

Common_Test 1.11

已修正的錯誤和故障

  • 由於測試套件編譯錯誤而中止的測試狀態已從 'auto_skipped' 變更為 'failed'。這會影響文字記錄檔、事件處理和 CT 勾點回呼。也改善了編譯失敗的記錄,尤其是在多個測試套件編譯失敗的情況下。

    自有 ID:OTP-10816

  • Test Server 原始碼剖析器 (erl2html2) 無法處理 epp_dodger 傳回的語法樹狀結構中的巨集元組。此錯誤已修正。

    自有 ID:OTP-12740

  • 新增選項,允許在 .spec 檔案中指定 ssh_port:[{node_start, [{ssh_port, 9999}]}].

    也允許指定額外的 ssh 選項,例如公鑰檔案的路徑:[{node_start, [{ssh_opts, [{user_dir, "/home/shrek/e2/"}]}]}].

    內部編號:OTP-12809

改進與新功能

  • 先前無法將可選參數(例如 default-operation)加入透過 ct_netconfc:edit_config/3,4 發送的 edit-config 請求中,您必須使用 ct_netconfc:send_rpc/2,3。為了簡化和完整性,現在將一個新的可選參數 OptParams 加入到 edit_config 函式中。

    內部編號:OTP-10446 輔助編號:kunagi-266 [177]

  • 當使用 ts 介面執行 OTP 測試時,現在可以為每個 OTP 應用程式指定所謂的測試類別。測試類別由 CT 測試規格表示,並定義現有測試套件、群組和案例的任意子集。測試類別的範例包括 'smoke'(冒煙測試)和 'bench'(基準測試)。(呼叫 ts:help() 以獲取更多資訊)。此外,還實作了在測試期間從目前測試規格讀取項目的函式:ct:get_testspec_terms/0 和 ct:get_testspec_terms/1。

    內部編號:OTP-11962

  • 已移除過時的腳本和 make 檔案操作,並更新了 Common Test 使用者指南中的安裝章節。

    內部編號:OTP-12421

  • 'keep_alive' 間隔已縮短至 8 秒,比 ct_telnet:expect/3 的預設 'idle_timeout' 值短 2 秒。這樣,telnet 伺服器會在操作逾時之前收到 NOP 訊息(可能會觸發動作)。此外,為了減少通訊逾時的風險,所有 telnet 連線的 TCP 選項 'nodelay' 預設為啟用。

    內部編號:OTP-12678 輔助編號:seq12818

  • 當執行 ct_run 程式時沒有任何標誌,現在會使用 "-dir ." 作為預設啟動標誌。同樣地,如果以空列表呼叫 ct:run_test/1,則會使用選項 {dir,"."}。此外,已更新說明文字 (ct_run -help),以及 Common Test 使用者指南中的執行測試章節。

    內部編號:OTP-12684 輔助編號:seq12865

Common_Test 1.10.1

已修正的錯誤與故障

  • 已修正 Common Test 記錄器程序中的一個錯誤,該錯誤會導致應用程式在長名稱節點上執行時崩潰。

    內部編號:OTP-12643

  • 在 ct_telnet:expect/3 中引入了 'wait_for_prompt' 選項,即使已找到其他 expect 模式,也會強制函式在收到提示字串之前不返回。

    內部編號:OTP-12688 輔助編號:seq12818

  • 如果測試案例中的最後一個運算式導致 timetrap 逾時,則會忽略堆疊追蹤,並且不會列印到測試案例記錄檔。發生這種情況是因為在這種情況下,由於尾呼叫消除,堆疊追蹤中沒有 {Suite,TestCase,Line} 資訊。Common Test 已被修改為透過在正確的位置插入 {Suite,TestCase,last_expr} 元組並按預期列印堆疊追蹤來處理這種情況。

    內部編號:OTP-12697 輔助編號:seq12848

  • 修正了 ct_netconfc 中的一個緩衝區問題,該問題可能導致某些訊息被永久緩衝。

    內部編號:OTP-12698 輔助編號:seq12844

  • Common Test 中的 VTS 模式已修改為使用 Webtool 應用程式 (ct_webtool) 的私有版本。

    內部編號:OTP-12704 輔助編號:OTP-10922

  • ct_netconfc:hello/3 中新增加入使用者功能的功能。

    內部編號:OTP-12707 輔助編號:seq12846

Common_Test 1.10

已修正的錯誤與故障

  • 新的測試執行後,測試概觀檔案 index.html 並非總是能正確更新。這是因為 Common Test 記錄快取機制中的錯誤,現在已修正。

    內部編號:OTP-11400

  • 根據文件,當成功的測試案例返回時,Common Test 應將 Result = ok 的 tc_done 事件發送到事件處理常式。但是,Common Test 會將 Result 設定為測試案例的傳回值。Common Test 現在已修改為符合文件。

    *潛在的不相容性*

    內部編號:OTP-12279 輔助編號:seq12737, OTP-12531

  • 即使 total_timeout 已設定為較低的值(即較短的時間),ct_telnet:expect/3 呼叫也無法在 idle_timeout 之前中止。此問題已修正。

    內部編號:OTP-12335

  • 來自設定函式和測試案例的未記錄傳回值 {skipped,Reason} 處理方式不一致。例如,測試案例會向 CT Hook 函式回報為「skipped」,但向事件處理常式回報為「successful」。現在,上述傳回值的處理方式與 {skip,Reason} 一致,並且也已記錄在文件中。

    *潛在的不相容性*

    內部編號:OTP-12359 輔助編號:seq12760

  • Erlang 原始碼轉 HTML 產生器有時會失敗,因為 epp:parse_erl_form/1 無法在包含的標頭檔中找到並展開所需的巨集。此問題已透過確保 common_test 始終將完整的包含路徑傳遞給 epp 來解決。此外,還修正了一個錯誤,該錯誤可能會因為格式錯誤的語法樹而導致 erl_syntax:revert/1 失敗。

    內部編號:OTP-12419

  • 已在 ct_run 說明文字中新增遺失的 group 選項。

    內部編號:OTP-12433 輔助編號:seq12788

  • 透過 on_tc_fail/2 和 on_tc_skip/2 Hook 函式的 ct:log/2/3 或 ct:pal/2/3 列印輸出(相當出乎意料地)最終會出現在「unexpected i/o」記錄檔中,而不是測試案例記錄檔中。此行為已變更,因此現在,這些 Hook 函式的所有列印輸出(包括 stdio 列印輸出)都會路由到測試案例記錄檔。

    內部編號:OTP-12468

  • 如果傳回類型為 void,ct_netconfc:action/3 現在將接受 {ok,[simple_xml()]} 形式的 RPC 回覆,並且在這種情況下只傳回原子 ok。

    內部編號:OTP-12491 輔助編號:seq12797

  • OTP-11971 錯誤地變更了 cover 規格檔中指定的 incl_dirs 相對路徑的處理方式。現在已修正,因此這些路徑預期是相對於 cover 規格檔本身儲存的目錄。

    內部編號:OTP-12498 輔助編號:OTP-11971

  • 已更新一些測試案例,以使用 ct:sleep/1 而不是 timer:sleep/1。原因是睡眠時間需要調整,以補償執行速度較慢的情況(例如,當 cover 正在執行時)。

    內部編號:OTP-12574

改進與新功能

  • Common Test 現在匯出一個函式 ct:get_event_mgr_ref/0,該函式會傳回 Common Test 事件管理員的名稱。這使得可以在測試執行時將事件處理常式插入事件管理員(使用 gen_event API)。

    內部編號:OTP-12506 輔助編號:seq12802

  • 當測試案例(或設定函式)因為來自連結程序的結束訊號而失敗時,Common Test 先前只將程序終止的原因傳遞給 CT 後置 Hook 函式和事件處理常式(在 tc_done 事件中)。現在已變更為改為傳遞元組 {'EXIT',ReasonForProcessTermination}。這使得 CT 後置 Hook 函式更容易區分這種失敗與其他類型的錯誤以及成功測試案例的傳回值。

    *潛在的不相容性*

    內部編號:OTP-12531 輔助編號:OTP-12279

  • ct_telnet:get_data/1 中引入了一個新功能,該功能可以在接收緩衝區中保留不完整的字串(尚未以換行符號終止的字串)時,自動輪詢 telnet 連線。輪詢由兩個新的 telnet 設定值控制,這些值記錄在 ct_telnet 參考手冊中。輪詢機制預設為停用(使 get_data/1 函式向後相容)。

    內部編號:OTP-12627

Common_Test 1.9

已修正的錯誤與故障

  • Test Server(和 Common Test)中的原始碼轉 html 程式碼產生器將無法在 html 程式碼中為具有不可展開巨集的函式產生錨點,導致指向此類函式的 html 連結錯誤。此修正讓程式碼產生器忽略無法展開的巨集(即不預先處理它們),以便始終產生正確的錨點。

    內部編號:OTP-11766 輔助編號:seq12556

  • OTP-11971 錯誤地變更了 cover 規格檔中指定的相對路徑(匯入/匯出檔案)的處理方式。現在已修正,因此這些路徑預期是相對於 cover 規格檔本身儲存的目錄。

    內部編號:OTP-12031

  • 當嘗試在具有慢速檔案系統的電腦上將大量 SASL 報告列印到記錄時,Common Test 有時會崩潰。此問題(由於 ct_logs 中的 IO 訊息緩衝錯誤)已修正。

    內部編號:OTP-12159

  • common_test telnet 用戶端 ct_telnet 及其相關元件有一些不穩定的測試案例。其中一些是由於 unix_telnet 回呼在發送密碼後發送額外的換行符號而引起的。這導致伺服器發送額外的提示符號,這讓測試感到困惑。不再發送額外的換行符號。

    此外,改善了 telnet 用戶端的除錯列印輸出和記錄,並稍微修改了一些測試案例以穩定測試。

    內部編號:OTP-12329

  • ct_netconfc 沒有預期到來自 ssh_connection:subsystem/4 的傳回值 {error,timeout}。此問題已修正。

    內部編號:OTP-12334

改進與新功能

  • ct_telnet 中,一個新的選項 {newline,boolean()} 已新增到所有將資料(命令字串)發送到 telnet 伺服器的函式中。預設情況下,ct_telnet 會將換行符號新增到所有命令字串,並且將新選項設定為 false 會關閉此行為。

    內部編號:OTP-12252 輔助編號:seq12730

  • 在建置時將 autoconf 輔助程式分發到應用程式,而不是在儲存庫中提交多個相同的副本。

    內部編號:OTP-12348

Common_Test 1.8.2

已修正的錯誤與故障

  • Ticket OTP-11971 引入了對 test_server-3.7.1 的執行時期相依性,因為 test_server 和 common_test 之間的介面已變更。錯誤的是,common_test.app 檔案未據此更新。現在已修正。

    內部編號:OTP-12037

改進與新功能

  • 警告:此為實驗性質功能,可能在未事先警告的情況下消失或變更。

    common_test 新增了實驗性質的支援,可從 common_test 套件中執行 Quickcheck 和 PropEr 測試。請參閱參考手冊中關於新模組 ct_property_testing 的說明。

    實驗性質的屬性測試已新增至 lib/{inet,ssh}/test/property_test 目錄下。它們可以直接執行,也可以從 common_test 套件 inet/ftp_property_test_SUITE.erlssh/test/ssh_property_test_SUITE.erl 中執行。

    詳情請參閱 test 目錄中的程式碼和說明文件。

    (感謝 Tuncer Ayaz 提供修補程式,新增 Triq)

    自有 ID:OTP-12119

Common_Test 1.8.1

修正的錯誤和故障

  • 長 telnet 訊息中的子字串有時會被錯誤地反轉。此錯誤已修正。

    自有 ID:OTP-11871 輔助 ID:seq12581

  • Common Test 中基本的 HTML 記錄模式(為了與舊版瀏覽器相容)會產生標籤不平衡的 HTML 程式碼。此問題已修正。

    自有 ID:OTP-11917 輔助 ID:seq12598

  • 已改進使用 common_test 執行程式碼涵蓋分析的機制。先前,如果測試執行包含多個測試,則會針對每個測試啟動和停止涵蓋範圍。這會從測試套件結果頁面上的「涵蓋範圍記錄」連結取得「中繼」涵蓋範圍記錄。若要在所有測試中累積涵蓋範圍資料,則必須在涵蓋範圍規格檔案中使用 'export' 選項。這項功能沒有詳細說明,而且功能相當令人困惑。

    當測試執行包含多個測試時,在涵蓋範圍規格檔案中使用 'nodes' 選項將會失敗,因為指定的節點只會包含在第一個測試的涵蓋範圍分析中。

    重複編譯和分析相同的模組也非常耗時。

    為了解決這些問題,ct 現在只會針對每個測試執行,即針對每個涵蓋範圍規格檔案,編譯和分析模組一次。記錄檔可透過最上層索引頁面的新按鈕取得。測試套件結果頁面上的舊「涵蓋範圍記錄」連結仍然存在,但它們都指向包含累積結果的相同記錄。

    自有 ID:OTP-11971

  • 如果多個測試在不同的 Erlang 節點上同時執行,並將其記錄寫入相同的目錄,則在完成時,all_runs.html 記錄檔中經常會有顯示不完整結果(全部為零)的項目。此問題是由 Common Test 記錄快取機制中的錯誤所導致,該錯誤已修正。

    自有 ID:OTP-11988 輔助 ID:seq12611

Common_Test 1.8

修正的錯誤和故障

  • 如果測試案例程序在執行 init_per_testcase/2 時收到來自連結程序的結束訊號,Common Test 會錯誤地處理產生的錯誤。問題已解決,且 Common Test 現在會正確報告此類錯誤,並提供正確的錯誤原因和結束位置。

    自有 ID:OTP-11643

  • 使用相同測試案例的兩個或多個執行個體執行並行測試案例群組,將會導致記錄檔名稱相同,且一個測試案例執行個體會覆寫另一個測試案例的記錄檔。此問題已解決。

    自有 ID:OTP-11644

  • 下列應用程式的應用程式升級 (appup) 檔案已修正

    asn1、common_test、compiler、crypto、debugger、dialyzer、edoc、eldap、erl_docgen、et、eunit、gs、hipe、inets、observer、odbc、os_mon、otp_mibs、parsetools、percept、public_key、reltool、runtime_tools、ssh、syntax_tools、test_server、tools、typer、webtool、wx、xmerl

    已在 test_server 中新增一個用於測試 appup 檔案的新測試公用程式。現在 OTP 中的大多數應用程式都使用此公用程式。

    (感謝 Tobias Schlager)

    自有 ID:OTP-11744

  • 如果先前的 hook 傳回 {skip,Reason}{fail,Reason} 而不是 Config 清單,則 cth_surefire hook 會在 pre_init_per_suite/3 中當機。此錯誤已修正,且 cth_surefire 現在只會傳播接收到的 InitData 值。

    自有 ID:OTP-11811

  • 已修正 ct_netconfc:get/2,3ct_netconfc:get_config/3,4ct_netconfc:action/2,3ct_netconfc:send_rpc/2,3ct_netconfc:send/2,3 的傳回值規格。

    自有 ID:OTP-11834 輔助 ID:seq12574

改進和新功能

  • ct_telnet 現在可以記錄 telnet 會話期間發生的所有通訊。先前只會記錄有關 ct_telnet 作業和命令的資訊,以及來自伺服器的明確要求資料。

    此外,現在可以使用基於錯誤記錄器事件處理常式和專用的 Common Test hook cth_conn_log 的記錄機制,將個別連線的資料列印到個別的記錄檔。請參閱 ct_telnet 參考手冊,以取得更多資訊和範例。

    重要注意事項:已將新的引數 ConnName 新增至 unix_telnet:connect/5 回呼函式。這會強制使用私人 ct_telnet 回呼模組的使用者根據 unix_telnet:connect/6 更新其程式碼。請參閱 unix_telnet 參考手冊和原始碼模組以取得詳細資訊。

    自有 ID:OTP-11440 輔助 ID:seq12457

  • 已針對 ct_telnet:expect/3 函式引入新的逾時選項。使用 {total_timeout,Time} 可以為完整的 expect 作業設定時間限制。在 Time 毫秒之後,expect/3 會傳回 {error,timeout}。如果未指定 total_timeout,則使用的預設值為無限大(即沒有時間限制)。請參閱 ct_telnet 參考手冊以取得更多資訊。

    自有 ID:OTP-11689

  • 已修正或移動一些函式規格,並修正一些 edoc 註解,以便允許使用 edoc。(感謝 Pierre Fenoll)

    自有 ID:OTP-11702

  • 已將測試案例群組名稱資訊新增至使用 tc_user_skiptc_auto_skip 事件訊息傳送的資料,以及傳遞至 CT Hook 函式 on_tc_skip/3on_tc_fail/3 的資料。修改只會影響函式名稱元素/引數。如果相關測試案例不屬於測試案例群組,此值會保持為原子。否則,會傳遞一個 tuple {FuncName,GroupName} ({atom(),atom()}) 來代替。

    請注意,此變更可能(取決於用於比對的模式)需要修改使用者事件處理常式和 hook 模組。有關詳細資訊,請參閱 Common Test 使用者指南中的「事件處理」章節,以及 ct_hooks 的參考手冊。

    另請注意,已修改 Test Server 架構回呼函式 report/2。此變更只會影響與 Test Server 而非 Common Test 介接的測試架構的使用者。請參閱 test_server_ctrl 參考手冊以取得詳細資訊。

    *潛在的不相容性*

    自有 ID:OTP-11732 輔助 ID:seq12541

  • 如果 Common Test 無法提示使用者在一個或多個測試套件編譯失敗時中止或繼續測試執行,則可以使用新的選項 {abort_if_missing_suites,Bool} 來指定是否應繼續測試執行,或停止執行。Bool 的預設值為 false (即即使套件遺失也繼續執行)。

    自有 ID:OTP-11769

已知錯誤和問題

  • common_test:修正 Dialyzer 報告的問題。

    自有 ID:OTP-11525

Common_Test 1.7.4

修正的錯誤和故障

  • 現在會正確檢查群組和測試案例資訊函式的傳回值,如果傳回值無效,則會自動略過相關的測試案例。

    自有 ID:OTP-10631 輔助 ID:kunagi-345 [256]

  • 已更新 Common Test 處理略過測試案例的方式。在先前的版本中,從組態函式(例如 init_per_suite 或 init_per_group)傳回 {skip,Reason},會導致所有受影響的測試案例都以 auto_skipped 狀態略過。這是不適當的,因為此狀態應該用來通知 Common Test 已主動略過某些項目(例如,如果 init_per_group 失敗,則會略過測試案例群組)。因此,在此版本的 Common Test 中,每當使用者略過套件、群組或個別測試案例時(藉由組態函式或測試規格詞彙),受影響的測試案例都會改為取得 user_skipped 狀態。

    此更新表示一些可能會以各種方式影響 Common Test 使用者的變更

    • 測試結果和統計資料將會受到影響,這在執行迴歸測試並將結果與先前的測試執行進行比較時,必須知道。
    • 讀取或剖析文字記錄檔 suite.log 的使用者會注意到,自動略過的函式現在會報告為 auto_skipped 而不是之前的 skipped
    • 當 info 函式(例如 suite/0 或 group/1)中的 require 失敗時,所有受影響的組態函式和測試案例都會標示為 auto_skipped
    • 如果 Common Test 偵測到測試套件中的錯誤(例如無效的 all/0 函式),則所有受影響的組態函式和測試案例都會標示為 auto_skipped
    • 如果重複的測試執行工作階段在啟用 force_stop 的情況下達到期限,則所有剩餘的測試案例都會標示為 auto_skipped 而不是之前的 user_skipped
    • Common Test 在測試執行期間產生的事件訊息已受到此更新的影響。有關詳細資訊,請參閱 OTP-11524。

    自有 ID:OTP-11305 輔助 ID:OTP-11524

  • 從 pre_end_per_group/3 使用者 hook 函式傳回 {skip, Reason} 會導致 Common Test cth_log_redirect hook 中結束。此問題已解決。

    自有 ID:OTP-11409 輔助 ID:seq12446

  • 當 netconf 伺服器沒有回應關閉工作階段要求時,對 ct_netconfc:close_session/2 的呼叫會無限期地暫停,等待 netconf 用戶端終止。此問題已修正。如果關閉工作階段要求逾時,用戶端現在將永遠終止(並關閉連線)。

    自有 ID:OTP-11478

改進和新功能

  • 修正 cth_log_redirect.erl 以符合 gen_event 行為。感謝 Roberto Aloi。

    自有 ID:OTP-11401

  • CT hook 回呼函式 on_tc_skip/3 的第一個參數已修改。當此函式因 init_per_groupend_per_group 而被呼叫時,第一個參數的值現在會是 {init_per_group,GroupName}{end_per_group,GroupName}

    自有 ID:OTP-11523

  • 以下是 Common Test 在測試執行期間所傳送的事件訊息的修改:

    • 對於 tc_auto_skip 事件,Func 元素的值已從 end_per_group 變更為 {end_per_group,GroupName}
    • require 在 info 函式(例如 suite/0 或 group/1)中失敗時,初始化組態函式現在會回報為 auto_skipped 而不是 skipped,並附帶 tc_done 事件。
    • require 因為組態名稱已在使用中而在 info 函式中失敗時,tc_done 事件現在會回報錯誤,並以標記為 failed 而非 skipped 的 tuple (大小為 2) 表示。

    請參閱 Common Test 使用者指南中的「事件處理」章節以取得參考。

    自有 ID:OTP-11524 輔助 ID:OTP-11305

Common_Test 1.7.3

已修正的錯誤和故障

  • 新增了 ct_netconfc:send 和 ct_netconfc:send_rpc 的文件。

    自有 ID:OTP-11132

  • ct_netconfc:create_subscription 只允許 'filter' 元素內有一個 XML 元素。根據 RFC5277 的規定,應該允許在 filter 內新增任意數量的元素,因此現在已修正此問題。

    自有 ID:OTP-11166

  • Common Test hook cth_log_redirect 安裝的錯誤處理常式不會回應 init:stop/1/2。此問題已修正。

    自有 ID:OTP-11175 輔助 ID:seq12356

  • 當 Common Test 未執行時呼叫 ct:pal/2 或 ct:print/2 會導致退出。此行為已變更,現在只會將字串列印到 stdout。

    自有 ID:OTP-11176

  • 修正了 cth_log_redirect hook 呼叫 ct_logs 中未定義函式的問題。

    自有 ID:OTP-11238

  • 使用 'repeat' 選項執行測試時,Common Test 公用程式處理程序在測試執行後並非總是能快速終止,導致下一次執行開始失敗。現在使用監視器來確保每次測試執行後公用程式處理程序能終止。

    自有 ID:OTP-11244 輔助 ID:seq12396

  • 測試伺服器安裝了一個錯誤處理常式 (test_server_h),只是為了在每次收到錯誤或進度報告時,將目前測試案例的名稱寫入 stdout。此功能並無用處,因此已移除。內建的 Common Test hook cth_log_redirect 反而獲得改進,現在也會在記錄檔中用套件、群組和/或測試案例名稱標記所有錯誤和進度報告。

    自有 ID:OTP-11263 輔助 ID:seq12251

改進和新功能

  • 導入了一個新的記錄檔「測試前和測試後 I/O 記錄檔」,可以擷取測試執行之前和之後的錯誤和進度報告,以及使用 ct:log/2 和 ct:pal/2 產生的列印輸出。(同時也對記錄系統進行了一些小的改進)。新記錄檔的連結位於「Common Test Framework 記錄檔」頁面。Common Test 使用者指南已更新,加入了關於新記錄檔的資訊,以及關於如何透過 CT Hook 初始化和終止函式,將外部應用程式與 Common Test 同步的新章節。

    自有 ID:OTP-11272

Common_Test 1.7.2

已修正的錯誤和故障

  • Common Test 中一般連線處理的設計缺陷,導致無法實作可將多個連線名稱(即組態變數別名)對應到單一連線 pid 的連線處理常式。此問題已解決。

    自有 ID:OTP-10126 輔助 ID:kunagi-178 [89]

  • 如果 telnet 連線處於掛起狀態,則呼叫 ct_telnet:close/1 會在 5 秒後逾時,且連線處理程序會被強制終止。在某些情況下,連線不會取消註冊,且嘗試使用相同名稱開啟新連線會使 common_test 嘗試重複使用相同的連線,因為它認為連線仍處於活動狀態。此問題已修正 - 現在已終止的連線一律會取消註冊。

    自有 ID:OTP-10648 輔助 ID:seq12212

  • 透過快取最上層 HTML 索引記錄檔 (記錄檔目錄中的 all_runs.html 和 index.html),提高了測試效能。這解決了啟動時間緩慢和測試執行時間隨著 logdir 中儲存的 ct_run 目錄數量增加而增加的問題。快取的索引項目在測試執行期間會儲存在 RAM 中,並在測試執行完成時儲存到 logdir 中的檔案(以加快啟動速度)。

    自有 ID:OTP-10855

  • 測試規格功能的測試已改進,並且發現並修正了一些小錯誤。

    自有 ID:OTP-10857

  • 某些 HTML 頁尾中指向最上層索引檔案的連結已消失。此錯誤已修正。此外,套件總覽記錄檔無法正確關閉的問題也已解決。

    自有 ID:OTP-11046

  • 如果套件中未實作 end_per_testcase,即使它是選擇性函式,Common Test 在發生 timetrap 錯誤時,也會在記錄檔中列印警告。此列印輸出已移除。

    自有 ID:OTP-11052

改進和新功能

  • 如果無法決定特定記錄列印輸出屬於哪個測試案例,則先前會使用 common test framework 記錄檔。現在,此類列印輸出會改為傳送到 test_server 中的 unexpected_io.log.html,以便只有一個地方可以尋找「遺失的」列印輸出。

    自有 ID:OTP-10494 輔助 ID:kunagi-319 [230]

  • 讓 cover 在從 beam 尋找來源時更智慧。

    尤其是,如果目前的啟發式方法失敗,則使用 module_info 中的來源路徑進行搜尋。

    自有 ID:OTP-10902

  • 新增 ct_slave:start/2 的變體,用於在本機主機上使用指定的選項啟動節點。

    自有 ID:OTP-10920

  • 整合 Andreas Schultz 的橢圓曲線貢獻

    為了能夠在 SSL/TLS 中支援橢圓曲線密碼套件,已在 public_key 和 crypto 中新增處理橢圓曲線基礎架構的功能。

    這也導致 crypto API 重新撰寫,以獲得一致性並消除不必要的額外負荷。已更新所有使用 crypto 的 OTP 應用程式以使用新的 API。

    影響:與其他公開金鑰演算法相比,橢圓曲線密碼學 (ECC) 以較小的金鑰大小提供相當的安全性。較小的金鑰大小可節省電力、記憶體、頻寬和運算成本,這使得 ECC 對於受限環境特別有吸引力。

    自有 ID:OTP-11009

  • 已移除產生 PDF 檔案不再需要的 Postscript 檔案。

    自有 ID:OTP-11016

  • 從測試案例記錄檔中紅色錯誤列印輸出(針對失敗的測試案例)新增了一個連結,指向記錄檔末尾的完整錯誤描述。原因是在紅色欄位中的錯誤描述有時會截斷為 50 個字元,以便使記錄檔盡可能簡短易讀。

    自有 ID:OTP-11044 輔助 ID:seq12304

  • ct_telnet:expect/3 新增了一個選項 'no_prompt_check'。如果使用此選項,ct_telnet 在嘗試比對給定的模式之前,將不會等待提示符或換行符。

    自有 ID:OTP-11095

Common_Test 1.7.1

已修正的錯誤和故障

  • 如果在終止階段安裝在 CT Master 事件管理員中的事件處理常式花費太長時間回應,則 CT Master 會因 5 秒後逾時而崩潰。這會使系統處於不良狀態。此問題已透過 30 分鐘的逾時值解決,如果 CT Master 在該時間後逾時,現在會終止事件管理員並正確關閉。

    自有 ID:OTP-10634 輔助 ID:kunagi-347 [258]

  • 從 Common Test 安裝的事件處理常式中使用任何 ct 列印輸出函式進行列印,都會導致死鎖。此問題已解決。

    自有 ID:OTP-10826 輔助 ID:seq12250

  • 使用 force_stop 旗標/選項來中斷測試執行,會導致 Common Test 崩潰。此問題已解決。

    自有 ID:OTP-10832

改進和新功能

  • 已移除已棄用的 run_test 程式,請改用 ct_run。

    *潛在的不相容性*

    自有 ID:OTP-9052

已知錯誤和問題

  • 測試案例執行時間會隨著測試執行的大小而增加。

    自有 ID:OTP-10855

Common_Test 1.7

已修正的錯誤和故障

  • 現在,test_server 偵測到的嚴重錯誤(例如,如果無法建立記錄檔目錄)將回報給 common_test,並記錄在 common_test 記錄檔中。

    自有 ID:OTP-9769 輔助 ID:kunagi-202 [113]

  • 先前未記載的跨 cover 功能(用於累積多次測試的 cover 資料)現在已修正並記錄在文件中。

    自有 ID:OTP-9870 輔助 ID:kunagi-206 [117]

  • 如果忙碌的測試案例產生大量錯誤訊息,cth_log_redirect:post_end_per_testcase 會在等待錯誤記錄器完成處理所有錯誤報告時因逾時而崩潰。預設計時器為 5 秒。現在已延長至 5 分鐘。

    自有 ID:OTP-10040 輔助 ID:kunagi-173 [84]

  • 當測試案例因 timetrap 逾時而失敗時,該案例的 Config 資料會在後續呼叫 end_per_testcase/2 時遺失,也會在呼叫 CT Hook 函式 post_end_per_testcase/4 時遺失。此問題已解決,現在在 timetrap 逾時失敗後,Config 資料會正確傳遞到上述函式。

    自有 ID:OTP-10070 輔助 ID:kunagi-175 [86]

  • 已從 ct_snmp 中移除一些呼叫 snmp 中已棄用和已移除的函式。

    自有 ID:OTP-10088 輔助 ID:kunagi-176 [87]

  • 在 test_server 中,相同的程序會監督目前正在執行的測試案例,並作為該測試案例的群組領導者(以及 IO 伺服器)。此外,當執行平行測試案例時,會產生新的臨時監督者/群組領導者程序,而作為循序測試案例群組領導者的程序將不會處於活動狀態。這會導致幾個問題

    * 由 init_per_suite 啟動的程序會繼承 init_per_suite 程序的群組領導者(且當平行測試案例執行時,該群組領導者將不會處理 IO 請求)。如果稍後平行測試案例導致這類程序使用 (例如) io:format/2 列印,則呼叫會掛起。

    * 同樣地,如果程序是從平行測試案例產生的,它會繼承該平行測試案例的臨時群組領導者。如果該產生的程序稍後 - 當平行測試群組完成後 - 嘗試列印某些內容,其群組領導者將會死亡,並出現 badarg 例外。

    這些問題已透過讓群組領導者與監督測試案例的程序分開來解決,並保持平行測試案例的臨時群組領導者程序處於活動狀態,直到系統中沒有其他程序將其用作群組領導者。

    此外,還引入了一個新的 unexpected_io.log 記錄檔(可從每個測試套件的摘要頁面存取)。所有非預期的 IO 都會列印到其中(例如,對已完成的平行測試案例的群組領導者的 IO)。

    自身 ID:OTP-10101 輔助 ID:OTP-10125

  • ct_snmp: 中的一些錯誤修正

    • ct_snmp 現在會在設定 snmp 應用程式代理程式配置的 'variables' 參數時,使用 'agent_vsns' 配置變數的值。先前必須單獨完成此操作 - 即必須指定兩次支援的版本。
    • Snmp 應用程式無法寫入 notify.conf,因為 ct_snmp 將通知類型給定為字串而不是原子。此問題已修正。

    自身 ID:OTP-10432

  • ct_snmp 中的一些錯誤修正

    • 函式 register_users/2register_agents/2register_usm_users/2,以及對應的 unregister_*/1 函式無法執行。這些已修正/重寫。
    • 函式 update_usm_users/2 已移除,並改為加入取消註冊函式。現在可以使用 unregister_usm_users,然後使用 register_usm_users 來完成更新。
    • 加入函式 unregister_*/2,因此可以取消註冊特定的使用者/代理程式/usm 使用者。
    • 為完整性加入函式 unload_mibs/1
    • 覆寫配置檔無法運作,因為檔案是寫入 priv_dir 而非配置目錄 (priv_dir/conf)。此問題已修正。
    • register_usm_users/2 的引數文件說明錯誤。此問題已修正。

    自身 ID:OTP-10434 輔助 ID:kunagi-264 [175]

  • common test 中錯誤匯出的規格已更正為 ct_netconfc:hook_options/0inet:hostname/0

    自身 ID:OTP-10601

  • common_test 中的 netconf 用戶端在接收到資料後並未調整視窗。因此,用戶端會在一段時間後停止接收資料。此問題已修正。

    自身 ID:OTP-10646

改進與新功能

  • 現在可以讓測試規格包含其他測試規格。包含的規格可以與來源規格(以及所有其他加入的規格)合併,產生單一測試執行,或者可以在不同的測試執行中執行。此外,還引入了一個起始旗標/選項 join_specs,與 spec 選項結合使用。透過 join_specs,可以告訴 Common Test 合併多個測試規格,或將其分開執行。若沒有 join_specs,則後者為預設行為。請注意,這與先前版本的 Common Test 相比有所變更,在先前版本中,規格只能合併。更多資訊可以在《使用者指南》的「執行測試」章節中找到(請參閱「測試規格」小節)。

    *潛在的不相容性*

    自身 ID:OTP-9881 輔助 ID:kunagi-350 [261]

  • ct_slave:start/3 函式現在支援 {env,[{Var,Value}]} 選項,以擴充從屬節點的環境。

    自身 ID:OTP-10469 輔助 ID:kunagi-317 [228]

  • 已修正一些超出 PDF 頁面寬度的範例。

    自身 ID:OTP-10665

  • 更新 common test 模組以處理 unicode

    • 針對所有 HTML 檔案使用 UTF-8 編碼,除了使用 erl2html2:convert 產生的測試套件 HTML 版本外,該版本將具有與原始測試套件 (.erl) 檔案相同的編碼。
    • 使用 test_server_ctrl:uri_encode/1 對 HTML 檔案中的連結目標進行編碼。
    • 在適當情況下,將 unicode 修飾符 't' 與 ~s 一起使用。
    • 使用 unicode:characters_to_list 和 unicode:characters_to_binary 在二進位和字串之間進行轉換,而不是使用 binary_to_list 和 list_to_binary。

    自身 ID:OTP-10783

已知錯誤與問題

  • 當 groups/0 崩潰時,CT 會捨棄錯誤原因。

    自有 ID:OTP-10631 輔助 ID:kunagi-345 [256]

  • ct_master 節點上的事件處理常式導致掛起。

    自有 ID:OTP-10634 輔助 ID:kunagi-347 [258]

  • 在發生 timetrap 超時後,CT 無法開啟 telnet 連線。

    自有 ID:OTP-10648 輔助 ID:seq12212

Common_Test 1.6.3.1

已知錯誤與問題

  • 在 cth_surefire hook 中進行了以下更正/變更

    • 先前在 'testsuites' 元素下始終會有 'properties' 元素。即使其中沒有 'property' 元素,也會存在此元素。現在已變更為,如果沒有要顯示的 'property' 元素,則也不會有 'properties' 元素。
    • XML 檔案現在將(除非另有指定)儲存在最上層的記錄目錄中。先前,預設目錄將是 erlang 節點的目前工作目錄,這通常(但不一定)會是最上層的記錄目錄。
    • 'testsuite' 元素中的 'hostname' 屬性先前從來沒有正確的值。此問題已修正。
    • 'testsuite' 元素中的 'errors' 屬性先前會顯示失敗的測試案例數。現在已變更,且將始終具有值 0,而 'failures' 屬性將會顯示失敗的測試案例數。
    • 在 'testsuite' 元素中加入了一個新的屬性 'skipped'。這將顯示略過的測試案例數。這些先前會包含在失敗的測試案例數中。
    • 由 'testsuite' 元素中的 'tests' 屬性顯示的測試總數先前會包含 init/end_per_suite 和 init/end_per_group。現在已不再如此。 'tests' 屬性現在只會計算「實際」的測試案例。
    • 先前,自動略過的測試案例在 'log' 屬性中不會有任何值。此問題已修正。
    • 在 'testsuite' 元素中加入了一個新的屬性 'log'。
    • 為此 hook 加入了一個名為 'url_base' 的新選項。如果使用此選項,則會在 'testcase' 和 'testsuite' 元素中加入一個名為 'url' 的新屬性。

    自身 ID:OTP-10589

Common_Test 1.6.3

已修正的錯誤與故障

  • ct:run_test/1 選項 'config' 僅適用於單一配置檔,而不適用於檔案清單。此問題已修正。

    自身 ID:OTP-10495

  • ct_netconfc:close_session 有時會傳回 {error,closed},因為 ssh 連線(從伺服器端)在用戶端收到 rpc-reply 之前關閉。這是正常的,而且無法避免。已修正為在這種情況下傳回 'ok'。其他錯誤情況仍會提供 {error,Reason}。

    自身 ID:OTP-10510 輔助 ID:kunagi-320 [231]

  • ct_netconfc:close_session 有時會傳回 {error,closed} 或(如果連線已命名){error,{process_down,Pid,normal}},因為 ssh 連線(從伺服器端)在用戶端收到 rpc-reply 之前關閉。這是正常的,而且無法避免。已修正為在這種情況下傳回 'ok'。

    自身 ID:OTP-10570

  • 修正 ct:require 具有相同名稱和相同配置時會傳回 name_in_use 的錯誤。

    自身 ID:OTP-10572

改進與新功能

  • 已實作新的測試案例群組搜尋功能,使 Common Test 能自動搜尋群組定義樹狀結構(groups/0 的傳回值),並為符合規格的巢狀群組的所有路徑建立測試。它也允許指定子群組的唯一路徑,以避免執行不需要的測試。每當透過 ct_run 程式、ct:run_test/1 API 函式或測試規格啟動測試執行時,都可以使用此新功能。詳細資訊可以在「執行測試」章節中的「測試案例群組執行」小節中找到。

    自身 ID:OTP-10466 輔助 ID:kunagi-276 [187]

已知錯誤與問題

  • 如果測試案例失敗,則還原配置資料。

    自有 ID:OTP-10070 輔助 ID:kunagi-175 [86]

  • test_server 中的 IO 伺服器錯誤。

    自身 ID:OTP-10125 輔助 ID:OTP-10101, kunagi-177 [88]

  • common_test 中的錯誤連線處理。

    自有 ID:OTP-10126 輔助 ID:kunagi-178 [89]

Common_Test 1.6.2.1

已修正的錯誤與故障

  • 互動模式 (ct_run -shell) 無法正確啟動。此錯誤已修正。

    自身 ID:OTP-10414

Common_Test 1.6.2

已修正的錯誤與故障

  • 如果 CT hook 函式導致崩潰,在某些情況下可能會因為不合法的 IO 操作而導致 Common Test 終止。此錯誤已修正。

    自身 ID:OTP-10050 輔助 ID:seq12039

  • Common Test 文件說明在執行 CT hook 函式期間,timetrap 永遠不會作用。這僅適用於後 hook 函式,而不適用於前 hook 函式。CT hook 的程式碼已修改為根據文件說明運作。

    自身 ID:OTP-10069

  • 如果 CT 鉤子函式呼叫 exit/1 或 throw/1 BIF(可能間接呼叫,例如由於 gen_server:call/3 中的逾時),則 Common Test 會掛起。此問題已修復。

    自有 ID:OTP-10072 輔助 ID:seq12053

  • 文件已更新,其中包含有關如何處理傳回 fail/skip 的鉤子鏈結的資訊。

    自有 ID:OTP-10077 輔助 ID:seq12048

  • 當 ct_hooks 呼叫多個鉤子的 id/1 函式時,它會反轉鉤子的順序,並以錯誤的順序呼叫後續的 init/2 呼叫。此問題已修復。

    自有 ID:OTP-10135

  • surefire 鉤子現在可以正確處理自動跳過的初始化和測試函式。

    自有 ID:OTP-10158

  • 如果呼叫時正在執行平行測試案例群組,則 ct:get_status/0 函式無法報告狀態。此問題已修復,並且已更新函式的回傳值。請參閱 ct 參考手冊以取得詳細資訊。

    自有 ID:OTP-10172

改進和新功能

  • 對「靜默連線」的支援已更新,包括 ssh。此外,靜默連線詞彙已新增至測試規格詞彙集中。

    自有 ID:OTP-9625 輔助 ID:seq11918

  • 現在可以使用 require 和 ct:get_config 指定任意大小的元組作為 required config 資料。請參閱 ct:get_config 和 ct:require 參考手冊頁面,以取得有關允許哪些鍵的詳細資訊。

    此變更在 ct:require/2 介面中引入了向後不相容性。先前在執行 ct:require(a_name,{key,subkey}) 時,a_name 會與 key 相關聯。此情況已變更為 a_namesubkey 相關聯。此變更也會影響在套件/群組/測試案例資訊函式中使用 require

    *潛在的不相容性*

    自有 ID:OTP-9626 輔助 ID:seq11920

  • ct_run 程式現在會在結束前設定 OS 程序結束狀態。值 0 表示測試結果成功,1 表示一個或多個測試案例失敗或自動跳過,而 2 表示測試執行失敗。

    自有 ID:OTP-9865 輔助 ID:OTP-10087

  • 現在可以透過按一下標頭元素來排序 HTML 表格。為了重設已排序的表格,應簡單地重新整理瀏覽器視窗。此功能要求瀏覽器支援 JavaScript,且已啟用 JavaScript 執行。如果使用 'ct_run -basic_html' 旗標,則產生的 HTML 程式碼中不會包含任何 JavaScript 程式碼。

    自有 ID:OTP-9896 輔助 ID:seq12034, OTP-9835

  • netconf 用戶端 ct_netconfc 已新增至 common_test。它支援透過 SSH 的基本 netconf 功能。為了允許測試成功和失敗案例,它有意編寫為允許非標準行為。

    自有 ID:OTP-10025

  • 已引入測試規格詞彙 {define,Constant,Value},這使得可以在任意測試規格詞彙中使用值 (term()) 取代常數名稱 (atom())。「define」使(現在已棄用的)「alias」詞彙過時。更多詳細資訊(包括範例)可以在 Common Test 使用者指南的測試規格章節中找到。

    自有 ID:OTP-10049

  • 已新增記錄輸出的詳細程度。這使得可以為不同類別的記錄輸出以及一般輸出(例如標準 IO)指定偏好的詳細程度,以允許控制哪些字串會列印,哪些會忽略。已引入新版本的 Common Test 記錄函式 ct:log、ct:pal 和 ct:print,並新增了新的 Importance 引數。Importance 值會在執行階段與詳細程度比較。更多資訊可以在 Common Test 使用者指南中有關記錄的章節中找到。

    自有 ID:OTP-10067 輔助 ID:seq12050

  • ct:run_test/1 和 ct:run_testspec/1 的回傳值已從不具資訊性的 'ok'(與測試結果無關)變更為值 {Ok,Failed,{UserSkipped,AutoSkipped}}(全部為整數),其中顯示最終測試案例結果,或是值 {error,Reason},其中通知測試執行嚴重失敗。請參閱 ct 的參考手冊以取得詳細資訊。

    自有 ID:OTP-10087 輔助 ID:OTP-9865

  • 測試規格語法已使用新的和遺失的詞彙進行更新,例如 'define'、'verbosity'、'auto_compile'、'stylesheet'、'silent_connections'、'basic_html' 和 'release_shell'。請參閱 Common Test 使用者指南的測試規格章節以取得詳細資訊。

    自有 ID:OTP-10089 輔助 ID:OTP-10049

  • 現在可以透過呼叫 ct:break/1/2 函式來暫停測試案例的執行。透過呼叫 ct:continue/0/1 來繼續執行。中斷/繼續也適用於平行執行的測試案例。請參閱 ct 參考手冊以取得詳細資訊。

    自有 ID:OTP-10127

  • 現在可以從測試案例傳送使用者定義的事件,這些事件將由已安裝的事件處理常式擷取。

    自有 ID:OTP-10157

  • 已新增 ct:run_test/1 的新啟動選項 release_shell,這使得 Common Test 可以在測試套件編譯階段完成後釋放 shell 程序。如需詳細資訊,請參閱使用者指南中的執行測試章節。

    自有 ID:OTP-10248 輔助 ID:OTP-10127

Common_Test 1.6.1

已修復的錯誤和故障

  • Common Test 會在執行測試之前將測試套件目錄新增至程式碼路徑。這些目錄也應在測試執行結束時從程式碼路徑中移除,而在本次修復之前,並未執行此操作。

    自有 ID:OTP-9595

  • 現在會在 index.html 檔案(即測試執行的概觀檔案)中為測試執行期間的每個重複測試建立一個項目。先前並非如此。請注意,在頂層 (logdir) 索引檔案中,只會列出最後一個測試結果。例如,假設有測試規格:[{merge_tests,false},{dirs,"test1"},{dirs,"test1"}]。在測試執行的索引檔案中(在 Logdir/ct_run.Node.Date.Time 下方),會列出兩個測試。在頂層索引檔案中(在 Logdir 下方),只會列出最後一個測試(必須透過 all_runs.html 檔案找到先前的結果)。

    自有 ID:OTP-9634 輔助 ID:seq11924

  • 在測試案例逾時或中止後,end_per_testcase 函式會在新的專用程序上執行。此程序的群組領導者應設定為測試案例的 IO 伺服器,而先前並未正確設定。此錯誤的結果是測試案例記錄中永遠不會列印出關於 end_per_testcase 失敗或逾時的警告。此外,例如 test_server:stop_node/1 等嘗試與 IO 伺服器同步的協助函式會掛起。錯誤已修正。

    自有 ID:OTP-9666

  • 如果呼叫時沒有執行任何測試,則 ct:get_status/0 函式會導致呼叫程序接收 'DOWN' 訊息。此錯誤已修復。

    自有 ID:OTP-9830 輔助 ID:seq11975

  • 如果 Common Test 同時將 error_handler 輸出轉發到測試伺服器,並且正在啟動新的測試案例,則可能會發生死鎖情況。此錯誤已修復。

    自有 ID:OTP-9894

  • 現在會在「make install」期間,如預期地在安裝 bin 目錄(預設為 /usr/local/bin)中建立 ct_run 程式的連結。

    自有 ID:OTP-9898

  • 使用 ct:run_test/1 的 repeat、duration 或 until 選項會導致無限迴圈。此問題已修復。

    自有 ID:OTP-9899

  • 兩個或多個平行執行的測試案例,並同時使用 ct:pal/2/3 或 ct:print/2/3 列印到螢幕時,可能會寫入彼此的「插槽」並產生混亂的混合字串。為了避免這種情況,現在每次輸出呼叫只會傳送一條 IO 訊息。

    自有 ID:OTP-9900 輔助 ID:OTP-9904

  • 當測試案例因為 timetrap 逾時而終止時,目前的執行位置(套件、案例和行)不會正確列印在記錄檔中。此問題已修正。

    自有 ID:OTP-9930 輔助 ID:seq12002

  • 當呼叫 ct:fail/1 或 ct_fail/2 時,記錄檔中會列印錯誤的結束位置。

    自有 ID:OTP-9933 輔助 ID:seq12002

  • 測試伺服器和 Common Test 會在每次測試執行時新增新的錯誤處理常式,並且無法移除先前新增的錯誤處理常式。如果測試節點上未執行 SASL,則測試伺服器才會發生這種情況。此問題已修復。

    自有 ID:OTP-9941 輔助 ID:seq12009

  • 如果測試案例程序由於連結程序的結束訊號而終止,則測試伺服器無法向框架報告套件和案例的正確名稱。此問題已修正。

    自有 ID:OTP-9958 輔助 ID:OTP-9855

  • 當使用 ct_run 啟動測試並使用 -pa 或 -pz(在 -erl_args 之前)將目錄新增至程式碼路徑時,Common Test 會刪除程式碼路徑中任何具有與所新增目錄相同基本名稱(請參閱 filename:basename/1)的現有目錄。此問題已修復。

    自有 ID:OTP-9964

  • 如果使用 ct_run -pa 將兩個或多個具有相同基本名稱(請參閱 filename:basename/1)的目錄傳遞到 Common Test,則只會實際新增其中一個目錄。

    自有 ID:OTP-9975 輔助 ID:seq12019

  • 群組資訊函式所需的組態資料會在呼叫 post_end_per_group 之前刪除,這使得鉤子函式無法讀取和使用相關資料。此問題已修復。

    自有 ID:OTP-9989

  • 測試規格中停用內建鉤子會被忽略,現在已修復。

    自有 ID:OTP-10009

  • 修正了 common_test、driver、erl_driver 和 Windows 安裝說明文件中各種排版錯誤。(感謝 Tuncer Ayaz)

    自有 ID:OTP-10037

改進和新功能

  • 已引入一個新的選用功能,使 Common Test 能夠產生每個測試案例或組態函式唯一的 priv_dir 目錄名稱。選項/旗標的名稱為 'create_priv_dir',並且可以將其設定為值 'auto_per_run'(這是預設的現有行為),或 'auto_per_tc' 或 'manual_per_tc'。如果使用 'auto_per_tc',則測試伺服器會自動為每個測試案例建立專用的 priv_dir(如果案例數量眾多和/或重複,則可能會非常昂貴)。如果使用 'manual_per_tc',則使用者需要透過呼叫新的函式 ct:make_priv_dir/0 來明確建立 priv_dir。

    自有 ID:OTP-9659 輔助 ID:seq11930

  • 已將測試案例群組名稱的欄新增至套件概觀 HTML 記錄檔。

    自有 ID:OTP-9730 輔助 ID:seq11952

  • 現在可以使用 post_end_per_testcase CT 鉤子函式在概觀記錄檔中列印測試案例的註解,即使測試案例由於 timetrap 或未知的結束訊號而終止,或者 end_per_testcase 函式逾時也是如此。

    自有 ID:OTP-9855 輔助 ID:seq11979

  • 現在始終會為所有組態函式呼叫 pre- 和 post CT 鉤子函式,即使組態函式未在測試套件中實作也一樣。

    自有 ID:OTP-9880 輔助 ID:seq11993

  • 當測試案例失敗時,Common Test 現在會立即在測試案例記錄檔中列印錯誤資訊(包含時間戳記)。這使得更容易看到故障實際發生的時間,並有助於在記錄中找到相關的追蹤和偵錯輸出。

    自有 ID:OTP-9904 輔助 ID:seq11985, OTP-9900

  • 測試伺服器已修改為在接收錯誤記錄器事件時檢查 SASL errlog_type 參數,以便它不會列印使用者已停用的類型報告。

    自有 ID:OTP-9955 輔助 ID:seq12013

  • 測試規範術語 'skip_groups' 已在 Common Test v1.6 中實作。然而,它從未被記錄在文件中,現在已處理此事。請參閱使用者指南中的「測試規範」章節以獲取相關資訊。

    內部 ID:OTP-9972

  • 已更新 Common Test Master 以使用 CSS 樣式表來呈現 HTML 日誌檔案。

    內部 ID:OTP-9973

  • 如果測試套件中未實作 init_per_group/2 和 end_per_group/2 函式,當執行群組時,Common Test 會呼叫其自身的本地 init 和 end 函式,先前分別名為 ct_init_per_group/2 和 ct_end_per_group/2。這些函式已分別重新命名為 init_per_group/2 和 end_per_group/2。請注意,這可能會影響任何使用舊名稱識別事件的使用者事件處理常式。

    *潛在的不相容性*

    內部 ID:OTP-9986 輔助 ID:OTP-9992

  • 現在可以透過資訊函式或呼叫 ct:timetrap/1,指定使用者定義的函式 ({M,F,A} 或 fun) 作為 timetrap 值,當使用者函式返回時,將會觸發 timetrap。

    內部 ID:OTP-9988 輔助 ID:OTP-9501, seq11894

  • 如果測試套件中未實作選擇性的組態函式 init_per_suite/1 和 end_per_suite/1,則會改為呼叫 Common Test 的本地版本,並將顯示在概觀日誌檔案中。由 pre- 或 post_init_per_suite 和 pre- 或 post_end_per_suite hook 函式產生的任何列印輸出都會儲存在這些函式的日誌檔案中。

    內部 ID:OTP-9992

  • Common Test 新增了一個 hook,可輸出 surefire XML,以搭配 Jenkins 等 CI 工具使用。若要啟用此 hook,請將 '-ct_hooks cth_surefire' 傳遞給 ct_run。請參閱 CTH 文件以瞭解更多詳細資訊。

    內部 ID:OTP-9995

Common_Test 1.6

改進和新功能

  • 已在 Common Test 使用者指南中新增「入門」章節。

    內部 ID:OTP-9156

  • 已在 Common Test 中實作測試案例群組資訊函式。在執行測試案例群組之前,現在會呼叫 TestSuite:group(GroupName)。此函式會傳回測試屬性的清單,例如指定 timetrap 值、請求組態資料等(類似於測試套件和測試案例資訊函式)。由 group(GroupName) 設定的屬性範圍為群組 GroupName 的所有測試案例和子群組。

    內部 ID:OTP-9235

  • Common Test hook 現在已是最終支援的版本。Common Test hook 可讓您將多個測試套件共有的初始化行為抽象化到一個位置,並且在不變更套件本身的情況下擴展套件的行為。如需詳細資訊,請參閱 Common Test 使用者指南。

    內部 ID:OTP-9449

  • 新增了一個內建的 Common Test hook,可擷取 error_logger 和 SASL 事件,並將它們列印在測試案例日誌中。若要停用此功能(以及任何其他內建 hook),請將 'enable_builtin_hooks false' 傳遞給 Common Test。

    內部 ID:OTP-9543

  • Common Test 現在也會針對 init/end_per_suite/1init/end_per_group/2 組態函式呼叫資訊函式。這些函式可用於例如設定 timetraps 和請求僅與相關組態函式相關的外部組態資料(而不會影響為套件中的群組和測試案例設定的屬性)。init/end_per_suite(Config) 的資訊函式為 init/end_per_suite(),而 init/end_per_group(GroupName,Config) 的資訊函式為 init/end_per_group(GroupName)。資訊函式不能與 init/end_per_testcase(TestCase, Config) 一起使用,因為這些組態函式在測試案例處理程序上執行,並且將使用與測試案例相同的屬性(即測試案例資訊函式 TestCase() 設定的屬性)。

    內部 ID:OTP-9569

  • 現在可以在執行期間讀取測試案例日誌檔案的完整名稱。其中一種方法是在測試案例 Config 清單中將其查詢為索引鍵 tc_logfile 的值(這表示也可以由 pre- 或 post Common Test hook 函式讀取)。資料也會與事件 #event{name=tc_logfile,data={{Suite,Func},LogFileName}} 一起傳送,並且可以由任何已安裝的事件處理常式讀取。

    內部 ID:OTP-9676 輔助 ID:seq11941

  • Common Test 和 Test Server 產生的 HTML 日誌檔案的外觀已透過 CSS 檔案得到改進(且更易於自訂)。

    內部 ID:OTP-9706

  • 已新增函式 ct:fail(Format, Args) 和 ct:comment(Format, Args),以便更輕鬆地列印格式化的錯誤和註解字串(使用者無需明確呼叫 io_lib:format/2)。

    內部 ID:OTP-9709 輔助 ID:seq11951

  • 已反轉清理 hook(即 _end_per_hook)的 ct hook 執行順序。

    *潛在的不相容性*

    內部 ID:OTP-9774 輔助 ID:seq11913

  • 可以在測試案例執行期間擷取 stdout 的列印輸出。這在例如從測試案例執行期間從 SUT 讀取和剖析 tty 列印輸出(如有必要,例如,判斷測試結果)時非常有用。擷取階段使用 ct:capture_start/0 開始,並使用 ct:capture_stop/0 停止。緩衝字串清單使用 ct:capture_get/0/1 讀取和清除。可以從擷取的字串清單中篩選出使用 ct:log/2/3ct:pal/2/3 產生的列印輸出。這可以透過使用要排除的日誌類別清單呼叫 capture_get/1 來完成。

    內部 ID:OTP-9775

  • 已擴展 all/0 清單中指定測試案例群組的語法,以包含群組和子群組的執行屬性。在 all/0 中為群組指定的屬性會覆寫群組宣告 (在 groups/0 中) 中指定的屬性。此擴展的主要目的是在不宣告相關群組的副本的情況下,能夠以不同的屬性執行相同的測試集。此外,相同的語法可以用在測試規格中,以便在執行時變更群組的屬性,而無需編輯測試套件。請參閱使用者指南以瞭解詳細資訊和範例。

    內部 ID:OTP-9809 輔助 ID:OTP-9235

已知錯誤和問題

  • 修正 CT/TS 中因例外狀況中的行號而導致的問題。

    內部 ID:OTP-9203

Common_Test 1.5.5

已修正的錯誤和故障

  • 已更正測試套件概觀 HTML 日誌檔案中註解著色的錯誤。因此,已引入新的框架回呼函式 format_comment/1。

    內部 ID:OTP-9237

  • 自動產生的測試案例群組的 init 和 end 組態函式導致測試案例的執行順序不正確。此問題已修正。

    內部 ID:OTP-9369

  • 如果使用 'logdir' 旗標/選項指定多個目錄,Common Test 會崩潰。此問題已修正,現在會正確回報錯誤。

    內部 ID:OTP-9370

  • 如果使用錯誤的引數呼叫 ct:log/2,可能會導致 Common Test IO 處理程序崩潰。此錯誤已修正。

    內部 ID:OTP-9371 輔助 ID:OTP-8933

  • 已修正一個錯誤,該錯誤導致 Test Server 使用不正確的模組名稱作為第一個引數呼叫 end_tc/3 框架函式。

    內部 ID:OTP-9379 輔助 ID:seq11863

  • 如果在 lib 模組中執行函式期間(即直接或間接從測試案例呼叫的函式)發生 timetrap 超時,則 end_tc/3 框架回呼函式中的 Suite 引數不會正確包含測試套件的名稱,而是 lib 模組的名稱。(僅當 lib 模組包含 ct.hrl 編譯時才會發生這種情況)。此錯誤已解決。

    內部 ID:OTP-9398

  • 修正 vts 模式。現在它會回報錯誤(例如,關於不正確的組態檔案),而不是崩潰或掛起。此外,已移除測試目錄名稱必須具有 "_test" 後綴的要求。此外,已實作一種因應措施,以解決檔案瀏覽器(在許多 Web 瀏覽器中)僅傳回基本檔案名稱,而不傳回完整目錄路徑的限制(這使得無法在主要測試目錄以外的其他目錄中放置組態檔案)。

    內部 ID:OTP-9429

  • 新增 proplist() 類型

    最近,我正在為 API 新增規格,發現沒有定義標準的 proplist() 類型。(感謝 Ryan Zezeski)

    內部 ID:OTP-9499

  • 現在可以使用 'step' 旗標/選項為包含測試案例群組的測試套件執行偵錯程式。先前這會導致 Common Test 崩潰。如果指定 'step config',現在也會自動在 init_per_group 和 end_per_group 上設定中斷點。請注意,中斷點始終自動在測試案例函式上設定,對於分組的案例也是如此。

    內部 ID:OTP-9518 輔助 ID:OTP-8933

  • 測試索引頁面未在每個測試套件開始時重新整理,這使得無法透過重新整理瀏覽器視窗來追蹤測試執行(沒有連結可追蹤)。此問題已修正。

    內部 ID:OTP-9520 輔助 ID:OTP-8933

  • 如果測試套件以未定義 init_per_group/2 和 end_per_group/2 函式的測試案例群組開始,則 init_per_suite/1 最初不會執行,且測試執行的記錄會失敗。此錯誤已修正。

    內部 ID:OTP-9584

  • 頂層索引頁面中的「遺失的套件」連結不正確,此問題已修正。

    內部 ID:OTP-9592

改進和新功能

  • 各種更正和更新,以改進錯誤的處理和回報。

    內部 ID:OTP-8933

  • dir 和 suite 開始選項現在可以結合使用。例如,在目錄 my_tests 中執行 my_SUITE 可以指定為 "ct_run -suite my_tests/my_SUITE" 或 "ct_run -dir my_tests -suite my_SUITE"。此外,規格:ct:run_test([{suite,["./my_SUITE"]},{testcase,t1}]) 現在會被解讀為 ct:run_test([{suite,"./my_SUITE"},{testcase,t1}]),即只會執行測試套件 my_SUITE 中的測試案例 t1,而不是所有案例。

    內部 ID:OTP-9155

  • 已引入一個新選項 'logopts',以便能夠修改 Common Test(或 Test Server)中記錄行為的某些方面。例如,每當進行 io 列印輸出時,test_server 都會將換行符號 (\n) 新增至輸出字串的末尾。這可能不一定是首選動作,因此可以透過 "ct_run ... -logopts no_nl"(或 ct:run_test([..., {logopts,[no_nl]}]))停用此功能。已引入新的框架回呼函式 get_logopts/0(請參閱 ct_framework 模組以瞭解詳細資訊)。

    內部 ID:OTP-9372 輔助 ID:OTP-9396

  • 新增了一個選項 'logopts',使得可以修改 Common Test (或 Test Server) 中日誌記錄行為的某些方面。 例如,如果測試執行期間不應產生測試套件原始碼的 HTML 版本 (因此在日誌檔案系統中不可用),則可以透過 "ct_run ... -logopts no_src" (或 ct:run_test([..., {logopts,[no_src]}])) 停用此功能。 新增了一個新的框架回呼函式 get_logopts/0 (詳情請參閱 ct_framework 模組)。

    自有 ID:OTP-9396 輔助 ID:seq11869, OTP-9372

  • 現在可以為 CT Hooks 指派優先順序。CTH 的優先順序決定了它相對於其他 CTH 的執行時間。優先順序最低的 CTH 將首先執行,優先順序相同的 CTH 將按照它們安裝的順序執行。

    自有 ID:OTP-9445

  • 現在可以在套件資訊函數或測試案例資訊函數中使用元組 {M,F,A} 或 fun 作為 timetrap 規格。該函數必須傳回一個有效的逾時值,如 common_test 手冊頁和使用者指南中所述。

    自有 ID:OTP-9501 輔助 ID:seq11894

  • 新增了一個內建的 Common Test hook,可擷取 error_logger 和 SASL 事件,並將它們列印在測試案例日誌中。若要停用此功能(以及任何其他內建 hook),請將 'enable_builtin_hooks false' 傳遞給 Common Test。

    內部 ID:OTP-9543

  • Common Test 現在可以擁有內建的 hooks,這些 hooks 在執行任何測試時預設啟動。若要停用內建的 hooks,請將 'enable_builtin_hooks false' 傳遞給 Common Test。有關更多詳細資訊,請參閱 Common Test hooks 文件。

    自有 ID:OTP-9564

Common_Test 1.5.4

已修復的錯誤和故障

  • 先前無法在 ct:timetrap/1 中使用 timetrap 值 'infinity'。此問題已修復。

    自有 ID:OTP-9159

  • Common Test VTS 模式已更新,能夠報告包含測試案例群組的套件的測試結果 (先前會在此情況下崩潰)。

    自有 ID:OTP-9195

  • Common Test 現在會在測試執行中每次個別測試開始時重新整理最頂層的 index.html 頁面,以便可以透過追蹤其概觀頁面的連結來追蹤正在進行的測試進度。

    自有 ID:OTP-9210 輔助 ID:OTP-9054

  • 修正了在呼叫 ct:timetrap/1 時無法取消先前 timetrap 的錯誤。

    自有 ID:OTP-9233 輔助 ID:OTP-9159

  • 修正了當在 suite/0 中新增 cth 時,在 pre_init_per_suite 中超出範圍時,會導致 cth 無法移除並崩潰的錯誤。

    自有 ID:OTP-9264

改進和新功能

  • 現在可以從 init_per_testcase/2 傳回元組 {fail,Reason}。結果是相關的測試案例會被記錄為失敗,而不會實際執行。

    自有 ID:OTP-9160 輔助 ID:seq11502

  • Common Test 現在接受但會忽略空的測試案例群組規格。

    自有 ID:OTP-9161

Common_Test 1.5.3

已修復的錯誤和故障

  • 在測試規格中新增了一個選項,允許按原樣執行測試,而不是在同一「層級」上合併測試。請參閱測試規格文件的 merge_tests 指令。

    自有 ID:OTP-9026 輔助 ID:seq11768

改進和新功能

  • Common Test Hooks (CTH) 的 Alpha 版本。CTH 允許 common test 的使用者以比以前更優雅和更靈活的方式從測試套件中抽象出常見的行為。請注意,此功能的加入可能會在 common_test 和 test_server 之間的介面中引入未記錄行為的細微變化。

    *潛在的不相容性*

    自有 ID:OTP-8851

Common_Test 1.5.2

已修復的錯誤和故障

  • 更新了 ct:get_status 文件以描述 no_tests_running 回傳值。

    自有 ID:OTP-8895 輔助 ID:seq11701

  • 修正了在測試 common test 並行群組功能的測試套件中發生的競爭條件測試失敗。

    自有 ID:OTP-8921

  • 當在遠端節點上使用時,testspecs 的 include 指令現在可以正常運作。

    自有 ID:OTP-8935 輔助 ID:seq11731

改進和新功能

  • ct:parse_table 現在可以處理多行 sql 列。

    自有 ID:OTP-8907 輔助 ID:seq11702

  • run_test 可執行檔已重新命名為較不通用的 ct_run,以便更好地與其他應用程式搭配使用。run_test 將保留到 R16B,屆時將移除。

    自有 ID:OTP-8936

Common_Test 1.5.1

已修復的錯誤和故障

  • 從序列中的群組中的 end_per_group 傳回 {return_group_result,failed} 不會導致跳過後續的案例 (或群組)。此問題已修復。

    自有 ID:OTP-8753 輔助 ID:seq11644

  • ct:install 現在按照文件中的描述運作。

    自有 ID:OTP-8818 輔助 ID:seq-11666

改進和新功能

  • Common Test 已更新,可以處理測試案例群組 (和群組中的測試案例) 的啟動選項和測試規格術語。此外,還新增了一個名為 'label' 的選項,該選項將測試執行與 Common Test 在概觀 HTML 日誌中列印的名稱相關聯。

    自有 ID:OTP-8725 輔助 ID:OTP-8727

  • Andrey Pampukha 已新增至 AUTHORS 檔案。感謝 Andrey 在組態資料處理、大規模測試改進以及其他有用的更新和修正方面的工作。

    自有 ID:OTP-8803

  • 已更新使用者指南中的組態資料章節。

    自有 ID:OTP-8804

  • 毫秒現在包含在 Common Test 日誌條目的時間戳記中。(感謝 Tomas Johansson。)

    自有 ID:OTP-8808

Common_Test 1.5

已修復的錯誤和故障

  • 在 Common Test 中使用監視器的程序呼叫不會清除收件匣中剩餘的 DOWN 訊息。此問題已修復。

    自有 ID:OTP-8621 輔助 ID:seq11560

改進和新功能

  • 現在使用者可以提供特定的回呼模組來處理測試組態資料,以便可以存取任意形式的資料 (例如,透過讀取檔案或與組態伺服器程序通訊)。Common Test 中引入了兩個預設回呼模組:ct_config_plain 和 ct_config_xml。前者用於處理傳統的 Common Test 組態檔案 (包含鍵值元組形式的術語),後者用於處理 XML 表示形式的組態資料。

    自有 ID:OTP-8485

  • 現在可以執行不一定在本機檔案系統上可用的測試套件,而是已預先載入測試節點 (例如,從遠端節點以二進位檔形式傳送並透過 RPC 載入)。要求是已設定 no_auto_compile (或 {auto_compile,false}) 參數。

    自有 ID:OTP-8490 輔助 ID:seq11500

  • 即使測試案例已明確終止 (透過 abort_current_testcase/1) 或在 timetrap 逾時後,Test Server 現在也會呼叫 end_per_testcase/2 函數。在這些情況下,end_per_testcase 的回傳值將完全被忽略。因此,該函數將無法透過傳回 {fail,Reason} 來變更測試案例終止的原因,也無法透過 {save_config,Data} 來儲存資料。

    自有 ID:OTP-8500 輔助 ID:seq11521

  • 現在可以使用測試規格術語 'init' 自動啟動 Common Test 節點,並在節點上評估初始函數呼叫。已引入 'init' 術語的預設回呼模組 ct_slave,以便 Common Test Master 可以透過 ssh 執行主機登入和節點啟動操作。

    自有 ID:OTP-8570

  • run_test 指令碼已由一個 (同名) 程式取代,該程式可以無需明確安裝即可執行。啟動旗標與舊版啟動指令碼相同。

    自有 ID:OTP-8650

  • 先前,測試案例群組的 repeat 屬性指定了在主要測試執行後應重複執行群組的次數。也就是說,{repeat,N} 將會導致群組執行 1+N 次。為了與 run_test repeat 選項的行為一致,此行為已變更。N 現在指定絕對執行次數。

    自有 ID:OTP-8689 輔助 ID:seq11502

  • 使用 run_test -erl_args 選項,可以將 run_test 命令列上的選項分為 Common Test 應處理的選項 (在 -erl_args 之前的選項) 和應忽略的選項 (在 -erl_args 之後的選項)。Common Test 無法辨識的 -erl_args 之前的選項也會被忽略 (即與先前版本的 Common Test 相同的行為)。

    自有 ID:OTP-8690 輔助 ID:OTP-8650

  • 在 run_test 命令列的 pre-erl_args 部分中使用 -pa 或 -pz 新增的目錄將從相對轉換為絕對,以避免當 Common Test 在測試執行期間切換工作目錄時載入使用者模組時出現問題。

    自有 ID:OTP-8691 輔助 ID:OTP-8650

  • 透過新的啟動選項和新的 ct 介面函數,timetrap 處理已變得更易於使用者控制。透過 'multiply_timetraps' 啟動選項,可以指定一個值,所有 timetrap 逾時值都會乘以該值。例如,在執行 cover 或 trace 時,這對於臨時延長 timetrap 非常有用。 'scale_timetraps' 啟動選項會開啟或關閉 Test Server timetrap 縮放功能 (該功能會嘗試偵測測試是否可以從延長 timetrap 中受益,例如由於執行某些測試工具,並自動執行縮放)。此外,還引入了 ct:timetrap/1 函數,該函數可以在測試執行期間設定/重設 timetrap。此外,現在還提供 ct:sleep/1 函數,該函數在計算暫停程序的時間時會考慮 timetrap 參數。

    自有 ID:OTP-8693

  • 新增了一個新的 run_test 啟動選項 event_handler_init,它會採用一個啟動參數,該參數會傳遞給事件處理常式的 init 函數。

    自有 ID:OTP-8694

Common_Test 1.4.7

已修復的錯誤和故障

  • Common Test 的自動編譯功能在測試套件中包含標頭檔被修改時,無法識別 (如果使用了 dir 啟動旗標/選項)。此問題已修正。

    自身 ID:OTP-8396 輔助 ID:seq11488,OTP-8311

改進與新功能

  • 因 timetrap 超時而失敗的測試案例,其組態列表中的 tc_status 值已從 {tc_status,timeout} 變更為 {tc_status,timetrap_timeout}。

    自身 ID:OTP-8302

  • 在修正了一些錯誤並在文件建置過程中新增了一些功能後,現在可以在開放原始碼環境中建置文件。

    - 已更新算術計算。

    - 在產生的連結中,bif 函數名稱中使用的模組前綴已移除,因此連結看起來會像 "https://erlang.dev.org.tw/doc/man/erlang.html#append_element-2" 而不是 "https://erlang.dev.org.tw/doc/man/erlang.html#erlang:append_element-2"

    - 增強了載入新頁面時 html 文件中選單的定位。

    - 修正了 man page 生成中的一些錯誤 (感謝 Sergei Golovan)

    - 法定通知取自 xml book 檔案,因此 OTP 的建置過程可以用於非 OTP 的應用程式。

    自身 ID:OTP-8343

  • 現在可以使用 -include_lib 指令來包含 ct.hrl。(感謝 Fred Hebert.)

    自身 ID:OTP-8379

  • Common Test 中的 telnet 客戶端會傳送 [IAC,DO,NOP] 給伺服器,試圖保持連線。根據標準,這不是有效的序列,一些 telnet 伺服器會因此終止連線。客戶端已變更為每 10 秒傳送 [IAC,NOP],這應該是有效的序列。客戶端不會與伺服器協商此類型的「保持連線」訊息,如果這造成問題,使用者可以將 {keep_alive,false} 新增至伺服器/連線的 telnet 組態資料中,來停用保持連線功能。詳細資訊請參閱 ct_telnet 和 unix_telnet 手冊頁面。

    自身 ID:OTP-8450 輔助 ID:OTP-8311

Common_Test 1.4.6

修正的錯誤與故障

  • 如果 init_per_testcase/2 函數失敗,則測試案例現在會標記為自動跳過,而非使用者跳過 (先前會發生此情況)。

    自身 ID:OTP-8289

改進與新功能

  • 現在使用大多數平台上都存在的開放原始碼工具 (xsltproc 和 fop) 來建置文件。一個明顯的變化是框架已移除。

    自身 ID:OTP-8201

  • 對於失敗的測試案例,tc_done 事件應回報 {failed,Error} 形式的資訊。但先前只回報了 Error,此問題已修正。

    自身 ID:OTP-8235 輔助 ID:seq-11414

  • 現在可以從 end_per_testcase/2 函數中傳回 {fail,Reason},來使測試案例失敗。

    自身 ID:OTP-8284

  • 現在可以透過讓 end_tc/3 框架函數傳回測試案例的 {fail,Reason},來使測試案例失敗。

    自身 ID:OTP-8285

  • 已修改 test_server 框架 API (例如,end_tc/3 函數)。詳細資訊請參閱 test_server_ctrl 文件。

    自身 ID:OTP-8286 輔助 ID:OTP-8285,OTP-8287

  • 已實作測試事件的各種更新。已修改部分事件 (例如 tc_done 和 tc_auto_skip) 的資料欄位,以便更容易且更一致地對資料進行模式比對。此外,也變更了接收部分事件的順序。例如,測試案例的 tc_auto_skip 事件現在會出現在失敗的組態函數的 tc_done 之後 (而不是之前),這更有意義。請注意,沒有新增任何新事件,且事件記錄保持不變。

    自身 ID:OTP-8287 輔助 ID:OTP-8235

  • 已應要求移除在 all_runs.html 頁面上用於測試名稱的跑馬燈效果。請注意,測試名稱欄位在標題標籤中具有完整的文字字串,當滑鼠指標懸停在其上方時會顯示該字串 (也就是說,如果網頁瀏覽器支援標題標籤)。

    自身 ID:OTP-8288

  • 現在可以透過在 ct:run_test/1 選項列表中指定 {refresh_logs,LogDir} 元組,來重新整理任意記錄目錄中的頂層索引檔案。此外,run_test 腳本的 -refresh_logs 旗標已擴充為接受可選的 LogDir 引數,也就是 -refresh_logs [LogDir]。如果未指定 LogDir,則會假設為目前的工作目錄,除非使用 -logdir 旗標設定了記錄目錄。

    自身 ID:OTP-8290

  • 先前要求測試套件必須位於名為「test」的測試物件 (或 OTP 應用程式) 子目錄下 (或位於名為「<testobject>_test」的目錄下)。此問題已變更,現在 Common Test 主要只會在測試子目錄存在的情況下,於其中尋找套件。否則,它會假設套件儲存在使用者使用例如 'dir' 啟動旗標/選項指定的相同目錄中。

    自身 ID:OTP-8294

Common_Test 1.4.5

修正的錯誤與故障

  • 如果序列 (使用 sequences/0 宣告) 中的測試案例失敗,Common Test 記錄器程序會崩潰。此故障已修正。

    自身 ID:OTP-8089 輔助 ID:seq11334

改進與新功能

  • Common Test 和測試伺服器中的各種更新和修正。

    自身 ID:OTP-8045 輔助 ID:OTP-8089、OTP-8105、OTP-8163

  • 難以偵測覆蓋率資料收集和分析中的錯誤。已改善記錄,以便將更多關於例如匯入和遺失模組的資訊列印到 html 記錄檔案中。

    自身 ID:OTP-8163 輔助 ID:seq11374

  • 已改善 Common Test HTML 概觀頁面。現在可以查看測試案例是否已明確跳過,或是因為組態函數失敗而跳過。此外,歷史記錄頁面 (all_runs.html) 現在具有顯示測試名稱的捲動文字。仍然可以使用旗標/選項 'basic_html' 來產生舊格式 (將名稱顯示為截斷的字串)。

    自身 ID:OTP-8177

Common_Test 1.4.2

改進與新功能

  • Common Test 和測試伺服器的各種更正和改進。

    自身 ID:OTP-7981

Common_Test 1.4.1

改進與新功能

  • 微小的更新和更正。

    自身 ID:OTP-7897

Common_Test 1.4

改進與新功能

  • Common Test 中引入了 SSH 和 SFTP 的支援用戶端模組 ct_ssh。

    自身 ID:OTP-7838

  • 已引入測試案例群組。有了此功能,就可以執行測試案例的群組 (可能為巢狀結構),每個群組都會以對函數 init_per_group/2 和 end_per_group/2 的呼叫包裝。群組定義是透過新的回呼函數 groups/0 完成,該函數應傳回定義列表。群組定義包含名稱標籤、屬性列表和測試案例列表 (包含可能的巢狀群組定義)。屬性可以平行、依序和隨機順序執行測試案例。也可以根據不同的條件重複測試案例。屬性可以組合,因此可以例如重複執行組態案例特定次數,並每次以不同的 (隨機) 順序執行測試案例。可用的屬性為:平行、序列、隨機、重複、重複直到全部正常、重複直到任何正常、重複直到任何失敗以及重複直到全部失敗。詳細資訊請參閱 Common Test 使用者指南。

    自身 ID:OTP-7839 輔助 ID:OTP-7511

  • 現在可以將 DES3 加密的組態檔案與 Common Test 搭配使用。

    自身 ID:OTP-7842 輔助 ID:OTP-7838

  • 在先前版本的 Common Test 中,每個組態目標名稱只能開啟一個 FTP 連線。此問題已更新,因此可以開啟多個連線。仍然支援使用具名連線的可能性。

    自身 ID:OTP-7853 輔助 ID:OTP-7838

  • 已使用 Common Test 和 TS 的新增和修改框架來更新 Emacs 的 Erlang 模式。已新增 Common Test 中測試案例群組的語法 (以及 TS 中具有屬性的組態案例),並引入了新的最小 Common Test 套件框架。

    自身 ID:OTP-7856

Common_Test 1.3.6

修正的錯誤與故障

  • 當執行包含測試目錄中所有套件的測試時,如果一個套件的自動編譯失敗,則所有後續套件都會從測試中排除。這是不需要的行為,已修正。現在所有套件都會始終編譯,並且只有失敗的套件會從測試中排除 (並記錄為遺失)。

    自身 ID:OTP-7750 輔助 ID:OTP-7803

  • Common Test 中基於與除錯器互動的步進功能已損壞。此問題已修正,並新增了一些新的步進功能。詳情請參閱 Common Test 使用者指南。

    自身 ID:OTP-7800 輔助 ID:seq11106

改進和新功能

  • 現在使用者可以指定 include 目錄,Common Test 在編譯套件和幫助模組時會將其傳遞給編譯器(Common Test 會在執行測試之前自動執行編譯)。

    自身 ID:OTP-7803 輔助 ID:OTP-7750

Common_Test 1.3.5

已修正錯誤和故障

  • 如果 Erlang 執行時系統啟動時無法存取 Erlang shell (例如 -noshell),編譯錯誤會導致 Common Test 應用程式崩潰。在無法存取 shell 的情況下,Common Test 無法提示使用者選擇繼續或中止測試會話,但必須假設會話應繼續進行。

    自身 ID:OTP-7749 輔助 ID:seq11175, seq11180

改進和新功能

  • 現在 Common Test 使用者可以停用自動編譯功能。這可以透過指定 run_test 標誌 -no_auto_compile,或 ct:run_test/1 選項 {auto_compile,false} 來完成。

    自身 ID:OTP-7663

  • Common Test 新增了一個函式 ct:get_config/3,如果某個特定的配置變數在多個設定檔中定義,則可以使用該函式來傳回該變數的所有匹配值。傳回列表中的元素順序與設定檔的指定順序相同。

    自身 ID:OTP-7758 輔助 ID:seq11158

  • 由於 telnet 連線始終由設定變數別名識別,因此無法在設定檔中使用相同的 telnet 主機資料項目開啟多個連線。此限制已解除,現在可以僅透過處理值來關聯連線(即可以使用相同的設定變數開啟多個連線)。詳情請參閱 ct_telnet:open/4。

    自身 ID:OTP-7781

  • 引入了一種新的語法來定義預設配置資料值。在舊版本的 Common Test 中,若要定義和存取配置變數的預設值(在套件資訊或測試案例資訊函式中),必須使用別名。使用新的語法,您可以定義預設值而無需參照別名,如下所示:{default_config,VarName,DefaultValue}。請參閱使用者指南以取得更多資訊。

    自身 ID:OTP-7782

  • 在舊版本的 Common Test 中,每當配置變數透過 require 語句與名稱關聯時,配置變數名稱都會被新名稱取代。這在測試案例之間引入了不必要的依賴關係(例如,如果一個測試案例引入一個新名稱,則後續的測試案例將無法再透過原始變數存取配置資料)。此功能現已更新,因此當使用 require 引入新名稱時,它們會成為別名(參照)而不是取代。因此,隨時都可以透過原始配置變數名稱存取配置資料元素。

    自身 ID:OTP-7783

Common_Test 1.3.4

改進和新功能

  • Common Test 現在使用 re 應用程式,而不是之前的 rx 驅動程式來執行 telnet 字串上的正規表示式匹配。由於 re 可以在所有支援的作業系統上運作,因此現在也可以在 Windows 等平台上執行 telnet 會話(之前使用 rx 驅動程式時無法這樣做)。請注意,rx 驅動程式從現在起已過時,並將在 OTP R12B 之後從 Common Test 中移除。

    自身 ID:OTP-7528

Common_Test 1.3.3

改進和新功能

  • Common Test 和測試伺服器中實施了各種更新和改進,以及一些小的錯誤修復。

    自身 ID:OTP-7112

  • 現在可以透過新函式 ct:abort_current_testcase/1 或 test_server_ctrl:abort_current_testcase/1 來中止目前正在執行的測試案例。

    自身 ID:OTP-7518 輔助 ID:OTP-7112

Common_Test 1.3.2

改進和新功能

  • Common Test 中 rx 程式庫的配置測試並未在一般的 OTP 應用程式配置階段執行。這使得例如 autoconf 無法使用。此問題已變更為符合正常的 OTP 建置程序。

    自身 ID:OTP-7379

Common_Test 1.3.1

改進和新功能

  • 與 common_test 一起包含的 rx 程式庫在某些架構上無法建置,因為缺少 -fPIC 編譯器選項。

    自身 ID:OTP-7111

common_test 1.3.0