⑴ python的編輯器有哪些
1、Sublime Text
Sublime Text輕量級的代碼編輯器,跨平台,支持幾十種編程語言,包括Python,Java,C/C++等,小巧靈活,運行輕快,支持代碼高亮、自動補全、語法提示,插件擴展豐富,是一個很不錯的代碼編輯器,配置相關文件後,可直接運行Python程序。Sublime Text 是開發者中最流行的編輯器之一,多功能,支持多種語言,而且在開發者社區非常受歡迎。Sublime 有自己的包管理器,開發者可以使用TA來安裝組件,插件和額外的樣式,所有這些都能提升你的編碼體驗。
2、VS Code
這是微軟開發的一個跨平台的代碼編輯器,支持常見的編程語言開發,插件拓展豐富,不僅智能補全、語法檢查、代碼高亮,還支持git功能,運行流暢,是一個很不錯的代碼編輯器,安裝相關插件後,可直接運行Python程序。
3、Atom
這是github專門為程序員開發的一個代碼編輯器,也是款平台的,界面簡潔直觀,使用起來非常方便,自動補全、代碼高亮、語法提示,啟動運行速度較快,對於初學者來說,是一個很不錯的代碼編輯器。
4、PyCharm:
這是一個專門用於Python開發的IDE,常見的代碼補全、智能提示、語法檢查,這個軟體都支持,除此之外,還集成了版本控制、單元測試、git功能,可以快速創建Django,Flask等Python Web框架,使用起來非常不錯,在開發大型項目中經常會用到,唯一的缺點就是,啟動起來有些卡,還不是免費的,不過可以下載社區免費版的。PyCharm是 JetBrains 開發的 Python IDE。PyCharm用於一般IDE具備的功能,比如, 調試、語法高亮、Project管理、代碼跳轉、智能提示、自動完成、單元測試、版本控制……另外,PyCharm還提供了一些很好的功能用於Django開發,同時支持Google App Engine,更酷的是,PyCharm支持IronPython。
5、Vim
Vim可以說是Python最好的IDE。Vim是高級文本編輯器,旨在提供實際的Unix編輯器『Vi』功能,支持更多更完善的特性集。Vim不需要花費太多的學習時間,一旦你需要一個無縫的編程體驗,那麼就會把Vim集成到你的工作流中。
6、Eclipse with PyDev
Eclipse是非常流行的IDE,而且已經有了很久的歷史。Eclipse with Pydev允許開發者創建有用和互動式的Web應用。PyDev是Eclipse開發Python的IDE,支持Python,Jython和IronPython的開發。
7、Emacs
GNU Emacs是可擴展,自定義的文本編輯器,甚至是更多的功能。Emacs的核心是Emacs Lisp解析器,但是支持文本編輯。如果你已經使用過Vim,可以嘗試一下Emacs。
8、Komodo Edit
Komodo Edit 是非常干凈專業的Python IDE。
9、Wing
Wingware的Python IDE兼容Python 2.x和3.x,可以結合Django, matplotlib, Zope, Plone, App Engine, PyQt, PySide, wxPython, PyGTK, Tkinter, mod_wsgi, pygame, Maya, MotionBuilder, NUKE, Blender 和其他 Python 框架使用。Wing支持測試驅動開發,集成了單元測試,nose和Django框架的執行和調試功能。Wing IDE啟動和運行的速度都非常快,支持 Windows, Linux, OS X和Python versi。
10、PyScripter
PyScripter是款免費開源的Python集成開發環境(IDE)。
11、The Eric Python IDE
Eric是全功能的Python和Ruby編輯器和IDE,是使用Python 編寫的。Eric基於跨平台的GUI工具包Qt,集成了高度靈活的Scintilla 編輯器控制項。Eric包括一個插件系統,允許簡單的對IDE進行功能性擴展。
12、Interactive Editor for Python
IEP是跨平台的Python IDE,旨在提供簡單高效的Python開發環境。包括兩個重要的組件:編輯器和Shell,並且提供插件工具集從各個方面來提高開發人員的效率。
以上就是我總結的好用的12款Python編輯器。因每個人的操作習慣不同,適合自己使用的才是好用的Python編輯器。
⑵ 每天學點自動化測試技術:詳解Python單元測試框架-nose
Nose是Python的第三方單元測試框架,兼容unittest,簡化測試編寫。
用例編寫
編寫用例時,除了繼承unittest.TestCase,亦可直接編寫測試類,或定義函數作為測試。
用例發現
nose自動發現所有包含"test"的測試用例,不包括以 "_" 開頭的用例,支持遞歸發現。
執行命令
nose默認命令發現並執行當前目錄下所有測試用例,也可指定目錄、文件名模式執行特定測試。
測試前置和清理
nose支持unittest的setup和teardown,可用於測試前後執行。
子測試和測試生成器
nose支持unittest的subTest及測試生成器,通過yield實現。
測試用例結構
nose支持package、mole、class、function級別的前置和清理函數。
插件與報告
nose提供豐富插件,支持多進程測試、超時機制、參數化、報告生成等。
兼容性與替代
nose進入維護模式,nose2是其繼任者,提供更完善的測試功能,但不完全兼容。
實際使用
示例代碼展示nose支持的setUp和tearDown方法,以及執行測試用例的方法。
測試報告
nose支持生成HTML、XML格式的測試報告,提供代碼覆蓋率統計。
⑶ Python自動化測試框架有哪些
分享一些可用的Python自動化測試框架。
自動化測試常用的Python框架有哪些?常用的框架有Robot Framework、Pytest、UnitTest/PyUnit、Behave、Lettuce。Pytest、Robot Framework和UnitTest主要用於功能與單元測試,Lettuce和Behave僅適用於行為驅動測試。
一、Robot Framework
Python測試框架之一,Robot Framework被用在測試驅動(test-driven)類型的開發與驗收中。雖然是由Python開發而來,但是它也可以在基於.Net的IronPython和基於Java的Jython上運行。作為一個Python框架,Robot還能夠兼容諸如Windows、MacOS、以及Linux等平台。
在使用Robot Framework(RF)之前,需要先安裝Python 2.7.14及以上的版本。推薦使用Python 3.6.4,以確保適當的注釋能夠被添加到代碼段中,並能夠跟蹤程序的更改。同時還需要安裝Python包管理器--pip。
二、Pytest
適用於多種軟體測試的Pytest,是另一個Python類型的自動化測試框架。憑借著其開源和易學的特點,該工具經常被QA(質量分析)團隊、開發團隊、個人團隊、以及各種開源項目所使用。鑒於Pytest具有「斷言重寫(assert rewriting)」之類的實用功能,許多大型互聯網應用,如Dropbox和Mozilla,都已經從下面將要提到的unittest(Pyunit)切換到了Pytest之上。
除了基本的Python知識,用戶並不需要更多的技術儲備。另外,用戶只需要有一台帶有命令行界面的測試設備,並且安裝好了Python包管理器、以及可用於開發的IDE工具。
三、UnitTest/PyUnit
UnitTest/PyUnit一種標准化的針對單元測試的Python類自動化測試框架。基類TestCase提供了各種斷言方法、以及所有清理和設置的常式。因此,TestCase子類中的每一種方法都是以「test」作為名詞前綴,以標識它們能夠被作為測試用例所運行。用戶可以使用load方法和TestSuite類來分組、並載入各種測試。
可以通過聯合使用,來構建自定義的測試運行器。正如我們使用Junit去測試Selenium那樣,UnitTest也會用到UnitTest-sml-reporting、並能生成各種XML類型的報告。由於UnitTest默認使用了Python,因此我們並不需要什麼先決條件。除了需要具備Python框架的基本知識,您也可以額外地安裝pip、以及用於開發的IDE工具。
四、Behave
行為驅動開發是一種基於敏捷軟體開發的方法。它能夠鼓勵開發人員、業務參與者和QA人員,三者之間的協作。Python測試框架Behave允許團隊避開各種復雜的情況,去執行BDD測試。從本質上說該框架與SpecFlow和Cucumber相似,常被用於執行自動化測試。用戶可以通過簡單易讀的語言來編寫測試用例,並能夠在其執行期間粘貼到代碼之中。而且,那些被設定的行為規范與步驟,也可以被重用到其他的測試方案中。
任何具備Python基礎知識的人都可以使用Behave。其他先決條件還包括:先安裝Python 2.7.14及以上的版本。通過Python包管理器或pip來與Behave協作。大多數開發人員會選擇Pycharm作為開發環境,當然您也可以選用其他的IDE工具。
五、Lettuce
Lettuce是另一種基於Cucumber和Python的行為驅動類自動化工具。Lettuce主要專注於那些具有行為驅動開發特徵的普通任務。它不但簡單易用,而且能夠使得整個測試過程更流暢、甚至更有趣。安裝帶有IDE的Python 2.7.14、及以上的版本。當然,您也可以使用Pycharm或任何其他IDE工具。同時,您還需要安裝Python包管理器。
自動化測試的Python框架,Pytest、Robot Framework和UnitTest可主要用於功能與單元測試,而Lettuce和Behave僅適用於行為驅動測試。對於功能測試而言,Pytest是的。如果您是基於Python自動化測試的新手,Robot Framework是的入門工具。雖然其功能有所受限,但是它非常容易上手。對於基於Python的BDD測試而言,Lettuce和Behave同樣優秀。不過,如果你已經有了一定的Pytest經驗,那麼請使用Pytest-bdd。