⑴ 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。