




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、2013.2目錄1.語言特點語言特點2.版本介紹版本介紹3.注釋注釋4.數(shù)據(jù)類型數(shù)據(jù)類型5.變量定義和賦值變量定義和賦值6.輸出輸出7.數(shù)學(xué)計算數(shù)學(xué)計算8.轉(zhuǎn)義字符轉(zhuǎn)義字符9.函數(shù)函數(shù)10.局部和全局變量局部和全局變量11.控制流控制流12.字符串操作字符串操作13.列表列表14.字典字典15.元組元組(Python)16.數(shù)組數(shù)組(Tcl)17.文件操作文件操作18.名字空間名字空間(Tcl)19.模塊化模塊化20.面向?qū)ο缶幊堂嫦驅(qū)ο缶幊?1.多線程編程多線程編程22.Python中嵌入中嵌入Tcl23.擴展包應(yīng)用擴展包應(yīng)用ftp和和smtp/mime24.擴展包應(yīng)用擴展包應(yīng)用expect
2、語言特點C語言具有高效和貼近機器的特點,但是在內(nèi)存管理方面存在嚴重的缺陷;C+把效率與泛型和面向?qū)ο筇匦越Y(jié)合起來,但過于華麗復(fù)雜。使用C或者C+,對于整個自動化測試框架的執(zhí)行效率而言會有所提高。但是由于常見的測試流程對設(shè)計到對大量字符串的處理能力,C或者C+在這些方面的支持并不完備,會導(dǎo)致整個開發(fā)流程的延長。更重要的是,使用C或者C+,不能夠?qū)崿F(xiàn)跨平臺。Java采用了自動內(nèi)存管理,取消了容易出錯的指針。Java的自動化測試框架主要還是面向?qū)κ褂肑ava開發(fā)的產(chǎn)品的測試,并且主要使用在單元測試階段。對于用其他語言開發(fā)并編譯的軟件產(chǎn)品,在測試方面提供的支持力度一般。如果是對于嵌入式系統(tǒng)的測試就更欠
3、缺,處理文本也非常繁瑣。在Web界面的測試方面,Java提供一定的支持。語言特點Perl原本是專門設(shè)計處理文本的,這方面能力最強,但是不適合編寫大程序,語法晦澀難懂。Perl在網(wǎng)絡(luò)管理員的圈子里應(yīng)用的很廣,被稱作是the duct tape of the Internet,但在自動化測試領(lǐng)域應(yīng)用的范圍不是很廣泛。Ruby是日本人發(fā)明的完全面向?qū)ο蟮哪_本語言,在自動化測試領(lǐng)域得到了越來越廣泛的應(yīng)用。Ruby的正則表達式比Python方便,比Python有更完整的面向?qū)ο蟮恼Z法,Ruby的主要功能都是用類的方法調(diào)用來實現(xiàn)的,不是函數(shù);另一方面由于Ruby的強大,語言相對Python復(fù)雜,Ruby沒
4、有內(nèi)省性,缺乏國際化支持和類似Jython的東西。語言特點Tcl:解釋執(zhí)行的腳本語言,不需要編譯,面向過程,iTcl(incr Tcl)擴展包及8.6版本提供面向?qū)ο笾С郑瑃hread擴展包支持多線程。Tcl是老牌的自動化測試語言,最初就是基于整合測試系統(tǒng)而開發(fā)出來的,80年代開始就在摩托羅拉使用,后來被思科采納,并在自動化測試領(lǐng)域得到了廣泛的應(yīng)用。Python:解釋性的腳本語言,具有編譯過程(腳本編譯成字節(jié)碼),面向過程且面向?qū)ο?,支持多線程。 Python語言非常干凈,設(shè)計優(yōu)雅,具有出色的模塊化特性,可以與C和Java緊密整合。Python的支持庫的代碼水平也比較高,對于軟件開發(fā)的各個方面
5、的第三方庫(如圖像處理,網(wǎng)絡(luò)通信,Web技術(shù)等)都有非常好的支持。版本介紹ActiveTcl是ActiveState公司提供的免費Tcl開發(fā)集成支持包,ActiveTcl目前有8.4,8.5和8.6Beta三個版本。這里介紹的是8.4和8.5版本,IDE使用Eclipse+dltk8.4版本包含完整的擴展包,例如Expect8.5是內(nèi)核改進版本,運行速度比8.4快10%。8.5不包含絕大部分的擴展包,用戶需要通過內(nèi)置的teacup在線升級安裝各種需要的擴展包。如果無法在線升級,可先安裝8.4版本共用8.4的擴展包8.6目前還是beta版本,支持面向?qū)ο?,暫不考慮 Python的版本很多,而20
6、08年底推出Python3.0不向下兼容2.x版本。這里介紹的是2.x版本,使用的也是ActiveState公司提供的免費Python開發(fā)集成支持包ActivePython,IDE使用Eclipse+Pydev注釋Tcl:#注釋注釋1set a 1 ;#注釋注釋2(注意與命令同一行時注意與命令同一行時#前要加;前要加;) Python:#注釋注釋1a=1 #注釋注釋2注釋注釋3數(shù)據(jù)類型 Tcl:只有字符串一種類型,不需要聲明類型Python:有數(shù)字(整型、長整型、浮點數(shù)、復(fù)數(shù)),字符串和布爾值(True,F(xiàn)alse)這幾種類型,也不需要聲明類型變量定義和賦值Tcl:set a 1 set b
7、hello worldset c Hello 或或 set c Hello Python:a = 1 b = hello worldc = Hello 或或 c=Hello 或或 c=Helloa = True #布爾值布爾值print int(a)輸出Tcl:puts hello $b world puts hello $b world set b computerputs $b#雙引號里字符串會做置換處理,花括號里的置換則有可能會被阻止雙引號里字符串會做置換處理,花括號里的置換則有可能會被阻止 Python: print hello world # 或或 print “hello worl
8、d” 或或 print hello worldb=computerprint b數(shù)學(xué)運算Tcl:set a 1set b 2set c expr $a+$bputs $c#通過命令通過命令expr可以實現(xiàn)對數(shù)學(xué)表達式的分析和計算可以實現(xiàn)對數(shù)學(xué)表達式的分析和計算 Python: a = 1b = 2c = a + bprint c轉(zhuǎn)義字符”Tcl:puts The book I borrowed is 1984.#實際輸出為:實際輸出為:The book I borrowed is 1984.Python: print Janes dog is missing#實際輸出為:實際輸出為:Janes
9、 dog is missing函數(shù)(過程)Tcl:proc MyPet pet number 1 ; # number缺省值為缺省值為1 puts I have $number $petsreturn MyPet dogMyPet cat 5MyPet mouse 3函數(shù)(過程)Python:def MyPet(pet, number=1): print the number of my pets print I have %d %ss % (number,pet)return print MyPet._doc_MyPet(dog)MyPet(cat, 5)MyPet(number=3, pe
10、t=mouse)局部和全局變量Tcl:proc func global xputs x is $xset x 2puts Changed local x to $x set x 50 funcputs Value of x is $x“#全局變量在過程內(nèi)部不會自動可見,需要通過全局變量在過程內(nèi)部不會自動可見,需要通過global 命令命令來事先聲明,也可在變量前加來事先聲明,也可在變量前加:表示全局變量表示全局變量局部和全局變量Python:def func(): global x print x is, x x = 2 print Changed local x to, x x = 50 f
11、unc()print Value of x is, x控制流ifTcl:set love Falseif $love=True puts I love you elseif $love=False puts I dont love you else puts I dont know youPython:love = Falseif love=True: print I love youelif love=False: print I dont love youelse:print I dont know you控制流whileTcl:set number 23set guess 0set ru
12、nning True while $running = True if $guess = $number puts Congratulations, you guessed it. break if $guess $number puts Sorry, number is too small. incr guess continue puts Sorry, number is too big. incr guess -1 Python:number = 23guess = 0running = True while running: if guess = number: print Congratulations, you guessed it. break if guess number: print Sorry, nu
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 合同范本里購買
- 原料代加工合同范本
- 公司股權(quán)抵押合同范本
- 玻璃供貨合同范本
- 小區(qū)燈具合同范本
- 醫(yī)院物業(yè)租賃合同范本
- 合伙干股合同范本
- 合同范本模板簡約
- 買牦牛合同范本
- 單位設(shè)計合同范本
- 點亮生命-大學(xué)生職業(yè)生涯發(fā)展與就業(yè)指導(dǎo)全套教學(xué)課件
- 特殊作業(yè)現(xiàn)場監(jiān)護人安全培訓(xùn)課件
- 《會計發(fā)展史》課件
- 無人駕駛系統(tǒng)與智能車輛應(yīng)用技術(shù)實訓(xùn)教程
- 幼兒同伴關(guān)系對幼兒社會性發(fā)展的研究開題報告
- 學(xué)校食堂膳食營養(yǎng)培訓(xùn)課件
- 環(huán)境修復(fù)原理與技術(shù)-第5章-污染環(huán)境的植物修復(fù)原理
- 2024年1月浙江省首考普通高等學(xué)校招生全國統(tǒng)一考試英語試題
- 手術(shù)部位感染預(yù)防控制措施
- 《陜西省安全生產(chǎn)條例》考核試題
- 大班PPT課件《拍手歌》
評論
0/150
提交評論