Erlang 21

ct




erlang

ct

मॉड्यूल

सीटी

मॉड्यूल सारांश

कॉमन टेस्ट फ्रेमवर्क के लिए मुख्य यूजर इंटरफेस।

विवरण

Common Test फ्रेमवर्क के लिए मुख्य यूजर इंटरफेस।

यह मॉड्यूल रन-टेस्टिंग के लिए कमांड-लाइन इंटरफ़ेस और Common Test केस के मुद्दों के लिए बुनियादी कार्यों को लागू करता है, जैसे कॉन्फ़िगरेशन और लॉगिंग।

टेस्ट सूट समर्थन मैक्रोज़

config मैक्रो ct.hrl में परिभाषित किया ct.hrl । इस मैक्रो का उपयोग सभी परीक्षण मामलों को भेजे गए Config चर से जानकारी प्राप्त करने के लिए किया जाना है। इसका उपयोग दो तर्कों के साथ किया जाता है; पहला विन्यास चर का नाम है जिसे पुनः प्राप्त करना है, दूसरा Config चर है जिसे परीक्षण मामले में आपूर्ति की जाती है।

संभव कॉन्फ़िगरेशन चर में शामिल हैं:

  • data_dir - डेटा फ़ाइल निर्देशिका

  • priv_dir - स्क्रैच फ़ाइल निर्देशिका

  • परीक्षण सूट में init_per_suite/1 या init_per_testcase/2 द्वारा जो कुछ भी जोड़ा गया है।

जानकारी का प्रकार

handle() = pid()

एक कनेक्शन की पहचान (संभाल)।

config_key() = atom()

कॉन्फ़िगरेशन कुंजी जो कॉन्फ़िगरेशन फ़ाइल में मौजूद है

target_name() = atom()

कॉन्फ़िगरेशन डेटा के लिए एक नाम और एसोसिएशन की आवश्यकता स्टेटमेंट, या कॉल के लिए ct:require/2 , उदाहरण के लिए, ct:require(mynodename,{node,[telnet]})

key_or_name() = config_key() | target_name()
conn_log_options() = [conn_log_option()]

विकल्प जो cth_conn_log हुक को दिए जा सकते हैं, जिसका उपयोग cth_conn_log और टेलनेट कनेक्शन को लॉग करने के लिए किया जाता है। विवरण और कैसे इस हुक का उपयोग करने के उदाहरण के लिए ct_netconfc या ct_telnet देखें।

conn_log_option() = {log_type,conn_log_type()} | {hosts,[key_or_name()]}
conn_log_type() = raw | pretty | html | silent
conn_log_mod() = ct_netconfc | ct_telnet

निर्यात

abort_current_testcase (कारण) -> ठीक | {त्रुटि, ErrorReason}

प्रकार

वर्तमान में परीक्षण मामले को निष्पादित करता है। उपयोगकर्ता को निश्चितता के साथ पता होना चाहिए कि वर्तमान में कौन सा परीक्षण केस निष्पादित हो रहा है। इसलिए फ़ंक्शन केवल उस फ़ंक्शन से कॉल करने के लिए सुरक्षित है जिसे परीक्षण मामले द्वारा कॉल किया गया है (या सिंक्रोनाइज़ किया गया)।

Reason , टेस्ट केस को निरस्त करने का Reason , टेस्ट केस लॉग में छपा होता है।

add_config (कॉलबैक, कॉन्फ़िगरेशन) -> ठीक | {त्रुटि, कारण}

प्रकार

निर्दिष्ट कॉलबैक मॉड्यूल और कॉन्फ़िगरेशन स्ट्रिंग का उपयोग करते हुए कॉन्फ़िगरेशन कॉन्फ़िगरेशन चर। कॉलबैक मॉड्यूल को या तो लोड किया जाना है या कोड भाग में मौजूद है। लोड किए गए कॉन्फ़िगरेशन चर बाद में फ़ंक्शन ct:remove_config/2 का उपयोग करके निकाले जा सकते हैं।

ब्रेक (टिप्पणी) -> ठीक है | {त्रुटि, कारण}

प्रकार

किसी भी सक्रिय समय-सीमा को रद्द कर देता है और वर्तमान परीक्षण मामले के निष्पादन को रोक देता है जब तक कि उपयोगकर्ता कॉल फ़ंक्शन continue/0 । उपयोगकर्ता तब परीक्षण चलाने वाले एर्लांग नोड के साथ बातचीत कर सकता है, उदाहरण के लिए, डिबगिंग उद्देश्यों के लिए या परीक्षण मामले के एक हिस्से को मैन्युअल रूप से निष्पादित करने के लिए। यदि एक समानांतर समूह निष्पादित हो रहा है, तो इसके बजाय ct:break/2 को बुलाया जाना है।

एक रद्द किए गए समय-सीमा को स्वचालित रूप से विराम के बाद पुन: सक्रिय नहीं किया जाता है, लेकिन इसे ct:timetrap/1 साथ आरंभ करना चाहिए।

काम को तोड़ने / जारी रखने की कार्यक्षमता के लिए, Common Test को stdin नियंत्रित करने वाली शेल प्रक्रिया जारी करनी चाहिए। यह स्टार्ट ऑप्शन release_shell को true release_shell करके किया जाता true । विवरण के लिए, Running Tests from the Erlang Shell or from an Erlang Program उपयोगकर्ता गाइड में Running Tests from the Erlang Shell or from an Erlang Program देखें।

ब्रेक (TestCase, टिप्पणी) -> ठीक है | {त्रुटि, कारण}

प्रकार

उसी तरह से काम करता है जैसे ct:break/1 , केवल तर्क TestCase एक समांतर समूह में निष्पादित होने वाले परीक्षण मामले को रोकना संभव बनाता है। फ़ंक्शन ct:continue/1 का उपयोग TestCase निष्पादन को फिर से शुरू करने के लिए किया जाना है।

विवरण के लिए, ct:break/1

कैप्चर_गेट () -> लिस्टऑफस्ट्रेस

प्रकार

ct:capture_get([default]) समतुल्य ct:capture_get([default])

कैप्चर_गेट (ExclCategories) -> लिस्टऑफ़स्ट्रेस

प्रकार

रिटर्न और प्रिंट स्ट्रेट्स को कैप्चर करने के नवीनतम सत्र के दौरान बफ़र किए गए टेक्स्ट स्ट्रिंग्स की सूची को stdout । वे श्रेणियां जिन्हें सूची में अनदेखा किया जाना है, ListOfStrings साथ निर्दिष्ट किया जा सकता है। यदि ExclCategories = [] , कोई फ़िल्टरिंग नहीं होती है।

ct:capture_start/0 , ct:capture_stop/0 , ct:log/3

कैप्चर_स्टार्ट () -> ठीक है

परीक्षण मामले के निष्पादन के दौरान stdout के लिए मुद्रित सभी पाठ स्ट्रिंग्स को कैप्चर करना शुरू करता है।

ct:capture_get([default]) , ct:capture_stop/0 भी देखें।

कैप्चर_स्टॉप () -> ठीक है

पाठ स्ट्रिंग्स को कैप्चर करने वाले स्टॉप्स ( capture_start/0 साथ एक सत्र शुरू हुआ)।

ct:capture_get([default]) , ct:capture_start/0 भी देखें।

टिप्पणी (टिप्पणी) -> ठीक है

प्रकार

परीक्षण सूट परिणाम पृष्ठ पर तालिका में टिप्पणी क्षेत्र में निर्दिष्ट Comment प्रिंट करता है।

यदि कई बार कहा जाता है, तो केवल अंतिम टिप्पणी छपी है। परीक्षण केस रिटर्न मान {comment,Comment} इस फ़ंक्शन द्वारा निर्धारित स्ट्रिंग को ओवरराइट करता है।

टिप्पणी (प्रारूप, तर्क) -> ठीक है

प्रकार

परीक्षण सूट परिणाम पृष्ठ पर तालिका में टिप्पणी क्षेत्र में स्वरूपित स्ट्रिंग प्रिंट करता है।

टिप्पणी स्ट्रिंग बनाने के लिए io_lib:format/2 लिए तर्क और तर्क का उपयोग कॉल में किया जाता है। comment/2 का व्यवहार अन्यथा फ़ंक्शन ct:comment/1

जारी () -> ठीक है

एक परीक्षण मामले (समानांतर समूह में निष्पादित नहीं होने) को फ़ंक्शन ct:break/1 बाद जारी रखने के लिए इस फ़ंक्शन को बुलाया जाना चाहिए।

जारी रखें (TestCase) -> ठीक है

प्रकार

परीक्षण फ़ंक्शन को ct:break/2 बाद जारी रखने के लिए इस फ़ंक्शन को बुलाया जाना चाहिए। यदि परीक्षण किया गया मामला, TestCase , एक समानांतर समूह में निष्पादित होता है, तो यह फ़ंक्शन continue/0 बजाय, परीक्षण मामले को आगे बढ़ने के लिए उपयोग किया जाना चाहिए।

decrypt_config_file (EncryptFileName, TargetFileName) -> ठीक है | {त्रुटि, कारण}

प्रकार

EncryptFileName , पहले ct:encrypt_config_file/2,3 साथ उत्पन्न हुआ ct:encrypt_config_file/2,3 । मूल फ़ाइल सामग्री लक्ष्य फ़ाइल में सहेजी जाती है। एन्क्रिप्शन कुंजी, एक स्ट्रिंग, .ct_config.crypt नाम की एक पाठ फ़ाइल में उपलब्ध होनी चाहिए, या तो वर्तमान निर्देशिका में, या उपयोगकर्ता की होम निर्देशिका (यह उस क्रम में खोज की जाती है)।

decrypt_config_file (EncryptFileName, TargetFileName, KeyOrFile) -> ठीक है | {त्रुटि, कारण}

प्रकार

EncryptFileName , पहले ct:encrypt_config_file/2,3 साथ उत्पन्न हुआ ct:encrypt_config_file/2,3 । मूल फ़ाइल सामग्री लक्ष्य फ़ाइल में सहेजी जाती है। कुंजी का वैसा ही मान होना चाहिए जैसा कि एन्क्रिप्शन के लिए उपयोग किया जाता है।

एन्क्रिप्ट_कोन्फिग_फाइल (SrcFileName, EncryptFileName) -> ठीक है | {त्रुटि, कारण}

प्रकार

DES3 के साथ स्रोत कॉन्फ़िगरेशन फ़ाइल को एन्क्रिप्ट करता है और फ़ाइल EncryptFileName में परिणाम बचाता है। कुंजी, एक स्ट्रिंग, .ct_config.crypt नाम की एक पाठ फ़ाइल में उपलब्ध होनी चाहिए, या तो वर्तमान निर्देशिका में, या उपयोगकर्ता की होम निर्देशिका (यह उस क्रम में खोज की जाती है)।

परीक्षण चलाते समय एन्क्रिप्टेड कॉन्फ़िगरेशन फ़ाइलों का उपयोग करने के बारे में जानकारी के लिए, उपयोगकर्ता के गाइड में Encrypted Configuration Files अनुभाग देखें।

DES3 एन्क्रिप्शन / डिक्रिप्शन पर विवरण के लिए, एप्लिकेशन Crypto देखें।

Encrypt_config_file (SrcFileName, EncryptFileName, KeyOrFile) -> ठीक है | {त्रुटि, कारण}

प्रकार

DES3 के साथ स्रोत कॉन्फ़िगरेशन फ़ाइल को एन्क्रिप्ट करता है और लक्ष्य फ़ाइल EncryptFileName में परिणाम बचाता है। उपयोग करने के लिए एन्क्रिप्शन कुंजी या तो {key,Key} में मान है या {file,File} द्वारा निर्दिष्ट फ़ाइल में संग्रहीत मूल्य है।

परीक्षण चलाते समय एन्क्रिप्टेड कॉन्फ़िगरेशन फ़ाइलों का उपयोग करने के बारे में जानकारी के लिए, उपयोगकर्ता के गाइड में Encrypted Configuration Files अनुभाग देखें।

DES3 एन्क्रिप्शन / डिक्रिप्शन पर विवरण के लिए, एप्लिकेशन Crypto देखें।

असफल (कारण) -> ठीक है

प्रकार

निर्दिष्ट त्रुटि Reason साथ एक परीक्षण मामले को समाप्त करता है।

असफल (प्रारूप, आर्ग) -> ठीक है

प्रकार

प्रारूप स्ट्रिंग और मानों की सूची (त्रुटि के रूप में io_lib:format/2 ) द्वारा निर्दिष्ट त्रुटि संदेश के साथ एक परीक्षण मामले को समाप्त करता है।

get_config (आवश्यक) -> मान

ct:get_config(Required, undefined, []) समतुल्य ct:get_config(Required, undefined, [])

get_config (आवश्यक, डिफ़ॉल्ट) -> मान

ct:get_config(Required, Default, []) समतुल्य ct:get_config(Required, Default, [])

get_config (आवश्यक, डिफ़ॉल्ट, ऑप्स) -> ValueOrElement

प्रकार

कॉन्फ़िगरेशन डेटा मान पढ़ता है।

एक कॉन्फ़िगरेशन चर कुंजी या इसके संबंधित नाम (यदि किसी को ct:require/2 साथ निर्दिष्ट किया गया है ct:require/2 या एक require कथन) को देखते हुए मिलान मूल्यों या कॉन्फ़िगरेशन तत्वों को लौटाता है।

उदाहरण:

निम्नलिखित कॉन्फ़िगरेशन फ़ाइल को देखते हुए:

{unix,[{telnet,IpAddr},
       {user,[{username,Username},
              {password,Password}]}]}.

फिर:

ct:get_config(unix,Default) -> [{telnet,IpAddr}, 
 {user, [{username,Username}, {password,Password}]}]
ct:get_config({unix,telnet},Default) -> IpAddr
ct:get_config({unix,user,username},Default) -> Username
ct:get_config({unix,ftp},Default) -> Default
ct:get_config(unknownkey,Default) -> Default

यदि कोई कॉन्फ़िगरेशन चर कुंजी किसी नाम से जुड़ी हुई है ( ct:require/2 या require कथन के अनुसार), तो मान को पढ़ने के लिए कुंजी के बजाय नाम का उपयोग किया जा सकता है:

ct:require(myuser,{unix,user}) -> ok.
ct:get_config(myuser,Default) -> [{username,Username}, {password,Password}]

यदि एक कॉन्फ़िगरेशन चर को कई फ़ाइलों में परिभाषित किया गया है, तो सभी संभावित मूल्यों तक पहुंचने के लिए सभी विकल्प का उपयोग करें। मान किसी सूची में दिए गए हैं। तत्वों का क्रम उस क्रम से मेल खाता है जो कॉन्फ़िगरेशन फ़ाइलों को स्टार्टअप पर निर्दिष्ट किया गया था।

यदि कॉन्फ़िगरेशन तत्व (कुंजी-मूल्य ट्यूपल्स) को मानों के बजाय परिणाम के रूप में लौटाया जाना है, तो विकल्प element उपयोग करें। लौटाए गए तत्व फिर फॉर्म {Required,Value}

ct:get_config/1 भी देखें ct:get_config/1 , ct:get_config/2 , ct:require/1 , ct:require/2

get_event_mgr_ref () -> EvMgrRef

प्रकार

Common Test इवेंट मैनेजर का संदर्भ मिलता है। उदाहरण के लिए इस्तेमाल किया जा सकता है, उदाहरण के लिए, परीक्षण चलने के दौरान उपयोगकर्ता-विशिष्ट ईवेंट हैंडलर जोड़ें।

उदाहरण:

gen_event:add_handler(ct:get_event_mgr_ref(), my_ev_h, [])
get_progname () -> स्ट्रिंग ()

रिटर्न इस Erlang उदाहरण शुरू करने के लिए इस्तेमाल किया। यदि यह जानकारी नहीं मिल सकी, तो स्ट्रिंग "no_prog_name" वापस आ गई है।

get_status () -> TestStatus | {त्रुटि, कारण} | no_tests_running

प्रकार

चल रहे परीक्षण की स्थिति लौटाता है। लौटी हुई सूची में यह जानकारी होती है कि कौन सा परीक्षण केस निष्पादित हो रहा है (मामलों की एक सूची जब एक समानांतर परीक्षण केस समूह निष्पादित हो रहा है), साथ ही सफल, असफल, स्किप किए गए और अब तक के कुल परीक्षण मामलों के लिए काउंटर।

get_target_name (हैंडल) -> {ठीक है, लक्ष्यनाम} | {त्रुटि, कारण}

प्रकार

निर्दिष्ट कनेक्शन से संबंधित लक्ष्य का नाम देता है।

get_testspec_terms () -> TestSpecTerms | अपरिभाषित

प्रकार

इस परीक्षण को कॉन्फ़िगर करने और चलाने के लिए उपयोग किए जाने वाले सभी परीक्षण विनिर्देश शब्दों की एक सूची मिलती है।

get_testspec_terms (टैग) -> TestSpecTerms | अपरिभाषित

प्रकार

इस परीक्षण को कॉन्फ़िगर और चलाने के लिए उपयोग किए जाने वाले परीक्षण विनिर्देश से एक या अधिक शर्तें पढ़ता है। Tag किसी भी मान्य परीक्षण विनिर्देश टैग है, उदाहरण के लिए, label , config या logdir । यदि विकल्प allow_user_terms सेट है, तो उपयोगकर्ता-विशिष्ट शब्द भी पढ़ने के लिए उपलब्ध हैं।

उपयोगकर्ता की शर्तों को छोड़कर, सभी वैल्यू टुपल्स पहले तत्व के रूप में नोड नाम है।

परीक्षण की शर्तों को पढ़ने के लिए, Tag = tests ( suites , groups या cases बजाय) का उपयोग करें। Value तब फॉर्म पर सभी परीक्षणों की सूची है [{Node,Dir,[{TestSpec,GroupsAndCases1},...]},...] , जहां GroupsAndCases = [{Group,[Case]}] | [Case] GroupsAndCases = [{Group,[Case]}] | [Case]

get_timetrap_info () -> {समय, {स्केलिंग, स्केलवैल}}

प्रकार

वर्तमान परीक्षण मामले के लिए निर्धारित समयसीमा के बारे में जानकारी पढ़ता है। Scaling इंगित करता है कि क्या Common Test द्वारा शुरू की गई रनटाइम देरी के लिए स्वचालित रूप से समय-सीमा की भरपाई करने का प्रयास किया जाएगा, उदाहरण के लिए, कवर जैसे उपकरण। ScaleVal स्केल वर्तमान स्केलिंग गुणक का मान है (स्केलिंग अक्षम होने पर हमेशा 1)। ध्यान दें Time बढ़ा हुआ परिणाम नहीं है।

get_verbosity (श्रेणी) -> स्तर | अपरिभाषित

प्रकार

यह फ़ंक्शन निर्दिष्ट लॉगिंग श्रेणी के लिए वर्बोसिटी स्तर देता है। विवरण के लिए User's Guide देखें। सामान्य वर्बोसिटी स्तर को पढ़ने के लिए मान default का उपयोग करें।

install (Opts) -> ठीक | {त्रुटि, कारण}

प्रकार

कॉन्फ़िगरेशन फ़ाइलें और ईवेंट हैंडलर स्थापित करता है।

पहले परीक्षण से पहले एक बार इस फ़ंक्शन को चलाएं।

उदाहरण:

install([{config,["config_node.ctc","config_user.ctc"]}])

यह फ़ंक्शन स्वचालित रूप से प्रोग्राम ct_run द्वारा चलाया जाता है।

सुनव (टेलनेट) -> [एनवी]

प्रकार

निर्दिष्ट टेलनेट कनेक्शन पर कमांड listenv करता है और कुंजी-मूल्य जोड़े की सूची के रूप में परिणाम देता है।

लॉग (प्रारूप) -> ठीक है

ct:log(default, 50, Format, [], []) बराबर ct:log(default, 50, Format, [], [])

लॉग (X1, X2) -> ठीक है

प्रकार

ct:log(Category, Importance, Format, FormatArgs, []) समतुल्य ct:log(Category, Importance, Format, FormatArgs, [])

लॉग (X1, X2, X3) -> ठीक है

प्रकार

ct:log(Category, Importance, Format, FormatArgs, Opts) समतुल्य ct:log(Category, Importance, Format, FormatArgs, Opts)

लॉग (X1, X2, X3, X4) -> ठीक है

प्रकार

ct:log(Category, Importance, Format, FormatArgs, Opts) समतुल्य ct:log(Category, Importance, Format, FormatArgs, Opts)

लॉग (श्रेणी, महत्व, प्रारूप, स्वरूप, प्रारूप) -> ठीक है

प्रकार

एक परीक्षण मामले से लॉग फ़ाइल में प्रिंट करता है।

यह फ़ंक्शन टेस्ट केस से सीधे टेस्ट केस लॉग फाइल में स्ट्रिंग को प्रिंट करने के लिए है।

डिफ़ॉल्ट Category default , डिफ़ॉल्ट Importance है ?STD_IMPORTANCE , और FormatArgs लिए डिफ़ॉल्ट मान []

Category , Importance और no_css विकल्प के विवरण के लिए, उपयोगकर्ता के गाइड में अनुभाग Logging - Categories and Verbosity Levels

सामान्य परीक्षण इस फ़ंक्शन के साथ मुद्रित पाठ में विशेष HTML वर्णों (<,> और &) से बच नहीं जाएगा, जब तक कि esc_chars विकल्प का उपयोग नहीं किया जाता है।

make_priv_dir () -> ठीक | {त्रुटि, कारण}

प्रकार

यदि परीक्षण निजी निर्देशिका का उपयोग करने के लिए परीक्षण के मामले के लिए, manual_per_tc को manual_per_tc create_priv_dir सेट के साथ शुरू किया जाता है, तो उसे पहले इस फ़ंक्शन को कॉल करके बनाना होगा।

सूचित करें (नाम, डेटा) -> ठीक है

प्रकार

कॉमन टेस्ट इवेंट मैनेजर को Data साथ Name का एक अतुल्यकालिक अधिसूचना भेजता है। इसे बाद में किसी भी स्थापित इवेंट मैनेजर द्वारा पकड़ा जा सकता है।

यह भी देखें gen_event(3)

पाल (प्रारूप) -> ठीक है

ct:pal(default, 50, Format, [], []) बराबर ct:pal(default, 50, Format, [], [])

पाल (X1, X2) -> ठीक है

प्रकार

ct:pal(Category, Importance, Format, FormatArgs, []) समतुल्य ct:pal(Category, Importance, Format, FormatArgs, [])

पाल (X1, X2, X3) -> ठीक है

प्रकार

ct:pal(Category, Importance, Format, FormatArgs, Opts) समतुल्य ct:pal(Category, Importance, Format, FormatArgs, Opts)

पाल (X1, X2, X3, X4) -> ठीक है

प्रकार

ct:pal(Category, Importance, Format, FormatArgs, Opts) समतुल्य ct:pal(Category, Importance, Format, FormatArgs, Opts)

पाल (श्रेणी, महत्व, प्रारूप, स्वरूप, प्रारूप) -> ठीक है

प्रकार

एक परीक्षण के मामले से प्रिंट और लॉग।

यह फ़ंक्शन किसी टेस्ट केस से स्ट्रिंग को प्रिंट करने के लिए होता है, टेस्ट केस लॉग फाइल और कंसोल दोनों के लिए।

डिफ़ॉल्ट Category default , डिफ़ॉल्ट Importance है ?STD_IMPORTANCE , और FormatArgs लिए डिफ़ॉल्ट मान []

Category और Importance के विवरण के लिए, उपयोगकर्ता के गाइड में अनुभाग Logging - Categories and Verbosity Levels

ध्यान दें कि पाठ में विशेष वर्ण (<,> और &) कॉमन टेस्ट से बच जाएंगे, इससे पहले कि पाठ लॉग फ़ाइल में मुद्रित हो।

parse_table (डेटा) -> {शीर्षक, तालिका}

प्रकार

SQL तालिका से प्रिंटआउट निकालता है और ट्यूपल्स की सूची देता है।

पार्स करने के लिए प्रिंटआउट आमतौर पर SQL में एक select कमांड का परिणाम होता है। लौटी हुई Table टुपल्स की एक सूची है, जहां प्रत्येक ट्यूपल तालिका में एक पंक्ति है।

Heading तालिका में प्रत्येक स्तंभ के शीर्षों को दर्शाने वाला तार है।

प्रिंट (प्रारूप) -> ठीक है

ct:print(default, 50, Format, [], []) समतुल्य ct:print(default, 50, Format, [], [])

प्रिंट (X1, X2) -> ठीक है

प्रकार

ct:print(Category, Importance, Format, FormatArgs, []) समतुल्य ct:print(Category, Importance, Format, FormatArgs, [])

प्रिंट (X1, X2, X3) -> ठीक है

प्रकार

ct:print(Category, Importance, Format, FormatArgs, Opts) समतुल्य ct:print(Category, Importance, Format, FormatArgs, Opts)

प्रिंट (X1, X2, X3, X4) -> ठीक है

प्रकार

ct:print(Category, Importance, Format, FormatArgs, Opts) समतुल्य ct:print(Category, Importance, Format, FormatArgs, Opts)

प्रिंट (श्रेणी, महत्व, प्रारूप, स्वरूप, प्रारूप) -> ठीक है

प्रकार

एक परीक्षण मामले से कंसोल तक प्रिंट करता है।

यह फ़ंक्शन एक स्ट्रिंग को एक टेस्ट केस से कंसोल तक प्रिंट करने के लिए है।

डिफ़ॉल्ट Category default , डिफ़ॉल्ट Importance है ?STD_IMPORTANCE , और FormatArgs लिए डिफ़ॉल्ट मान []

Category और Importance के विवरण के लिए, उपयोगकर्ता के गाइड में अनुभाग Logging - Categories and Verbosity Levels

reload_config (आवश्यक) -> ValueOrElement | {त्रुटि, कारण}

प्रकार

पुनः लोड कॉन्फ़िगरेशन फ़ाइल जिसमें निर्दिष्ट कॉन्फ़िगरेशन कुंजी है।

यह फ़ंक्शन कॉन्फ़िगरेशन डेटा को अपडेट करता है जिसमें से निर्दिष्ट कॉन्फ़िगरेशन चर पढ़ा गया था, और इस चर के नए (संभवतः) नए मूल्य को वापस करता है।

यदि कॉन्फ़िगरेशन में कुछ चर मौजूद थे, लेकिन इस फ़ंक्शन का उपयोग करके लोड नहीं किया गया है, तो उन्हें कॉन्फ़िगरेशन तालिका से उनके उपनाम के साथ हटा दिया जाता है।

शेष_टेस्ट_प्रोक्स () -> {टेस्टप्रोक्स, शेयरडेल, अन्यजीएल}

प्रकार

यह फ़ंक्शन परीक्षण- और समूह लीडर प्रक्रियाओं की पहचान लौटाएगा जो अभी भी इस कॉल के समय चल रहे हैं। TestProcs सिस्टम में ऐसी प्रक्रियाएं हैं जिनमें समूह के नेता के रूप में कॉमन टेस्ट IO प्रक्रिया होती है। SharedGL केंद्रीय कॉमन टेस्ट IO प्रक्रिया है, जो कॉन्फ़िगरेशन फ़ंक्शन और क्रमिक रूप से परीक्षण मामलों को निष्पादित करने के लिए फ़ाइलों को लॉग करने के लिए मुद्रण के लिए जिम्मेदार है। OtherGLs कॉमन टेस्ट IO प्रक्रियाएं हैं जो समानांतर टेस्ट केस समूहों में परीक्षण मामलों के लिए लॉग इन फ़ाइलों को प्रिंट करती हैं।

इस फ़ंक्शन द्वारा दी गई प्रक्रिया की जानकारी का उपयोग परीक्षणों को निष्पादित करने के बाद शेष प्रक्रियाओं का पता लगाने और समाप्त करने के लिए किया जा सकता है। समारोह आम तौर पर आम टेस्ट हुक कार्यों से कहा जाता है।

ध्यान दें कि कॉन्फ़िगरेशन फ़ंक्शंस या परीक्षण मामलों को निष्पादित करने वाली प्रक्रियाएँ TestProcs में कभी शामिल नहीं TestProcs । इसलिए TestProcs में सभी समूह प्रक्रियाओं को समाप्त करने के लिए पोस्ट कॉन्फ़िगरेशन हुक फ़ंक्शंस (जैसे post_end_per_suite, post_end_per_group, post_end_per_testcase) का उपयोग करना सुरक्षित है, जिसमें समूह के रूप में वर्तमान समूह प्रक्रिया है।

यह भी ध्यान दें कि साझा समूह नेता ( SharedGL ) को उपयोगकर्ता द्वारा कभी भी समाप्त नहीं किया जाना चाहिए, केवल कॉमन टेस्ट द्वारा। समानांतर टेस्ट केस ग्रुप (अन्य OtherGLs ) के लिए समूह लीडर प्रक्रिया को हालांकि पोस्ट_एंड_पर_ग्रुप हुक कार्यों में समाप्त किया जा सकता है।

remove_config (कॉलबैक, कॉन्फ़िगरेशन) -> ठीक है

प्रकार

कॉन्फ़िगरेशन चर (एक साथ अपने उपनाम मिटा) को हटाता है जो निर्दिष्ट कॉलबैक मॉड्यूल और कॉन्फ़िगरेशन स्ट्रिंग के साथ लोड किए गए थे।

आवश्यकता (आवश्यक) -> ठीक | {त्रुटि, कारण}

प्रकार

जाँचता है कि क्या आवश्यक कॉन्फ़िगरेशन उपलब्ध है। Required रूप से मनमाने ढंग से गहरे ट्यूपल्स निर्दिष्ट किए जा सकते हैं। टपल का केवल अंतिम तत्व ही SubKey s की सूची हो सकता है।

उदाहरण 1. चर myvar आवश्यकता है:

ok = ct:require(myvar).

इस स्थिति में कॉन्फ़िगरेशन फ़ाइल में कम से कम होना चाहिए:

{myvar,Value}.

उदाहरण 2. sub1 और सब 2 के साथ कुंजी myvar आवश्यकता है:

ok = ct:require({myvar,[sub1,sub2]}).

इस स्थिति में कॉन्फ़िगरेशन फ़ाइल में कम से कम होना चाहिए:

{myvar,[{sub1,Value},{sub2,Value}]}.

उदाहरण 3. उपकुंजी sub1 साथ उपकुंजी के साथ कुंजी myvar आवश्यकता है:

ok = ct:require({myvar,sub1,sub2}).

इस स्थिति में कॉन्फ़िगरेशन फ़ाइल में कम से कम होना चाहिए:

{myvar,[{sub1,[{sub2,Value}]}]}.

ct:get_config/1 , ct:get_config/2 , ct:get_config/3 , ct:require/2

आवश्यकता (नाम, आवश्यक) -> ठीक | {त्रुटि, कारण}

प्रकार

जाँचता है कि क्या आवश्यक कॉन्फ़िगरेशन उपलब्ध है और इसे कोई नाम देता है। Required लिए शब्दार्थ ct:require/1 के समान है ct:require/1 अलावा सिवाय इसके कि SubKey सूची निर्दिष्ट नहीं की जा सकती।

यदि अनुरोधित डेटा उपलब्ध है, तो सबेंट्री Name के साथ जुड़ा हुआ है ताकि तत्व के मूल्य को ct:get_config/1 साथ पढ़ा जा सके ct:get_config/1 बशर्ते Name का उपयोग पूरे Required शब्द के बजाय किया जाता है।

उदाहरण:

टेलनेट कनेक्शन और एफ़टीपी कनेक्शन के साथ एक नोड की आवश्यकता होती है। नोड को नाम दें:

ok = ct:require(a,{machine,node}).

इस नोड के सभी संदर्भ तब नोड नाम का उपयोग कर सकते हैं। उदाहरण के लिए, FTP पर एक फाइल इस प्रकार लाई जाती है:

ok = ct:ftp_get(a,RemoteFile,LocalFile).

यह काम करने के लिए, कॉन्फ़िगरेशन फ़ाइल में कम से कम होना चाहिए:

{machine,[{node,[{telnet,IpAddr},{ftp,IpAddr}]}]}.
ध्यान दें

इस समारोह का व्यवहार Common Test तौर पर Common Test 1.6.2 में बदल गया। कुछ पश्चगामी संगतता रखने के लिए, ऐसा करना अभी भी संभव है:
ct:require(a,{node,[telnet,ftp]}).
यह नाम को शीर्ष-स्तरीय node प्रविष्टि के साथ संबद्ध करता है। यह काम करने के लिए, कॉन्फ़िगरेशन फ़ाइल में कम से कम होना चाहिए:
{node,[{telnet,IpAddr},{ftp,IpAddr}]}.

ct:get_config/1 , ct:get_config/2 , ct:get_config/3 , ct:require/1

रन (TestDirs) -> परिणाम

प्रकार

सभी निर्देशिका में सभी परीक्षण मामलों को निर्दिष्ट निर्देशिकाओं में चलाता है।

ct:run/3 भी देखें ct:run/3

रन (TestDir, Suite) -> परिणाम

निर्दिष्ट सूट में सभी परीक्षण मामलों को चलाता है।

ct:run/3 भी देखें ct:run/3

रन (TestDir, सुइट, मामले) -> परिणाम

प्रकार

निर्दिष्ट परीक्षण मामलों को चलाता है।

यह आवश्यक है कि ct:install/1 पहले चलाया गया हो।

सूट ( *_SUITE.erl ) फाइलों को TestDir या TestDir/test में संग्रहित किया जाना चाहिए। परीक्षण चलाने पर सभी सूट संकलित किए जाते हैं।

run_test (ऑप्स) -> परिणाम

प्रकार

Opts में विकल्पों के संयोजन द्वारा निर्दिष्ट परीक्षणों को चलाता है। विकल्प वही हैं जो प्रोग्राम ct_run साथ उपयोग किए ct_run , ct_run मैनुअल पेज में Run Tests from Command Line देखें।

यहां एक TestDir का उपयोग एक Suite लिए पथ को इंगित करने के लिए किया जा सकता है। ऑप्शन -case प्रोग्राम ct_run में ऑप्शन -case से मेल ct_run Opts में निर्दिष्ट कॉन्फ़िगरेशन फ़ाइलें स्वचालित रूप से स्टार्टअप पर स्थापित की जाती हैं।

TestRunnerPid को यदि release_shell == true लौटाया जाता release_shell == true । विवरण के लिए, ct:break/1

Reason त्रुटि के प्रकार को इंगित करता है।

run_testspec (TestSpec) -> परिणाम

प्रकार

TestSpec द्वारा निर्दिष्ट परीक्षण चलाता है। उन्हीं शब्दों का उपयोग परीक्षण विनिर्देश फ़ाइलों के रूप में किया जाता है।

Reason त्रुटि के प्रकार को इंगित करता है।

set_verbosity (श्रेणी, स्तर) -> ठीक है

प्रकार

लॉगिंग श्रेणी के लिए वर्बोसिटी स्तर सेट करने या संशोधित करने के लिए इस फ़ंक्शन का उपयोग करें। विवरण के लिए User's Guide देखें। सामान्य वर्बोसिटी स्तर सेट करने के लिए मान default का उपयोग करें।

नींद (समय) -> ठीक है

प्रकार

timer:sleep/1 समान यह फ़ंक्शन timer:sleep/1 STDLIB में timer:sleep/1 , एक निर्दिष्ट समय के लिए परीक्षण मामले को निलंबित करता है। हालाँकि, यह फ़ंक्शन मल्टीप्लीज़ Time को मल्टीप्ले_टाइमेट्रस मान (यदि सेट किया गया है) के साथ multiply_timetraps और कुछ परिस्थितियों में भी समय अपने आप scale_timetraps जाता है यदि scale_timetraps सही पर सेट होता true (डिफ़ॉल्ट false )।

start_interactive () -> ठीक है

इंटरैक्टिव मोड में Common Test शुरू करता है।

इस मोड से, सभी परीक्षण केस सपोर्ट फंक्शंस सीधे एर्लांग खोल से निष्पादित किए जा सकते हैं। इंटरैक्टिव मोड को OS कमांड लाइन से ct_run -shell [-config File...] साथ भी शुरू किया जा सकता है।

यदि "आवश्यक कॉन्फ़िगरेशन डेटा" का उपयोग करके किसी भी फ़ंक्शन (उदाहरण के लिए, टेलनेट या एफ़टीपी) को एरलांग शेल से बुलाया जाना है, तो कॉन्फ़िगरेशन डेटा को पहले ct:require/2 साथ होना चाहिए ct:require/2

उदाहरण:

> ct:require(unix_telnet, unix).
ok
> ct_telnet:open(unix_telnet).
{ok,<0.105.0>}
> ct_telnet:cmd(unix_telnet, "ls .").
{ok,["ls","file1  ...",...]}
चरण (TestDir, Suite, Case) -> परिणाम

प्रकार

डिबगर के साथ एक परीक्षण मामले के माध्यम से कदम।

ct:run/3 भी देखें ct:run/3

चरण (TestDir, Suite, Case, Opts) -> परिणाम

प्रकार

डिबगर के साथ एक परीक्षण मामले के माध्यम से कदम। यदि विकल्प config निर्दिष्ट किया गया है, तो Suite में कॉन्फ़िगरेशन फ़ंक्शन पर ब्रेकप्वाइंट भी सेट किए गए हैं।

ct:run/3 भी देखें ct:run/3

stop_interactive () -> ठीक है

इंटरैक्टिव मोड से बाहर निकलता है।

ct:start_interactive/0 भी देखें ct:start_interactive/0

Sync_notify (नाम, डेटा) -> ठीक है

प्रकार

Common Test इवेंट मैनेजर को Data साथ Name का एक तुल्यकालिक अधिसूचना भेजता है। इसे बाद में किसी भी स्थापित इवेंट मैनेजर द्वारा पकड़ा जा सकता है।

यह भी देखें gen_event(3)

Testcases (TestDir, सुइट) -> Testcases | {त्रुटि, कारण}

प्रकार

निर्दिष्ट सूट में सभी परीक्षण मामलों को लौटाता है।

समयावधि (समय) -> ठीक है

प्रकार

चल रहे परीक्षण मामले के लिए एक नई समय-सीमा निर्धारित करता है।

यदि तर्क Func , तो इस फ़ंक्शन के वापस आने पर समय-सीमा ट्रिगर हो जाती है। Func एक नया Time मान भी लौटा सकता है, जो उस स्थिति में नए Time मूल्य है।

userdata (TestDir, सूट) -> SuiteUserData | {त्रुटि, कारण}

प्रकार

suite/0 से लौटी userdata की सूची में टैग उपयोगकर्ताडेट के साथ निर्दिष्ट कोई भी डेटा लौटाता है।

userdata (TestDir, Suite, Case :: GroupOrCase) -> TCUserData | {त्रुटि, कारण}

प्रकार

Suite:group(GroupName) से लौटे userdata की सूची में टैग userdata साथ निर्दिष्ट कोई भी डेटा Suite:group(GroupName) या Suite:Case()