目录
前言
Web UI test automation Web UI 自动化
Mobile test automation 移动端自动化测试工具
Windows UI test automation Windows的UI测试工具
Unix \ Linux UI test automation
MacOS UI test automation MacOS UI自动化测试工具
结语
Python自动化测试工具有哪些?
,我们先说说框架吧,常用的Python自动化测试框架有Robot Framework、Pytest、UnitTest/PyUnit、Behave、Lettuce。软件测试的自动化在预设条件下运行系统或应用程序,评估运行结果,预先条件应包括正常条件和异常条件。自动化测试以人为驱动的测试行为转化为机器执行的一种过程。
实现软件测试自动化得用到一些Python自动化测试框架和工具,让我们看看都有哪些?
libraries 各种库
- selenium webdriver - 浏览器自动化工具
- splinter - 简单的web自动化工具,让元素定位,表单提交等更加容易
- mechanize - 有状态可编程的浏览器
- frameworks and wrappers 框架和封装
- py.saunter - 有主见的自动化测试框架,使用了selenium RC和webdriver api
- moz-web-qa - py.test的插件,为Mozilla的WebQA项目提供了额外功能
testutils sst - A web test framework that uses Python to generate functional browser-based tests.- wtframework - 让web测试可以配置的框架
- holmium.core - Page Object及其他工具库支持
- robotframework-selenium2library - Robot Framework的selenium扩展
- gocept.selenium - selenium RC的API, 适合编写基于WSGI, Plone, Zope 2, ZTK, or Grok 应用的测试用例
- webium - 基于python的一个Page Object实现
robotframework-anywherelibrary - Robot Framework的扩展库,使用selenium2测试web应用,使用appium测试移动应用- robotframework-pageobjects - 一个不错的Page Object实现,可以脱离robot framework单独使用。 具体看这里
elementium - 用jQuery风格的语法糖来实现浏览器的自动化测试用例- slickqa - slick-webdriver-python 项目是python selenium binding的一个封装
selene - Concise UI 测试用例,使用python实现支持Ajax,PageObjects和Widgets- hitch - 编写基于service的应用的测试用例
Needle - Needle是基于图片比对的测试工作,它可以对web应用的一部分进行截图,然后跟预期结果的图片进行比对- PyPOM - PyPOM是另一个Page Object库,适用于Selenium和Splinter测试
POM - POM是Page-Object-Model 微框架,目的是让Web UI测试更加简单,快速和有乐趣- websmith - Web测试的一套DSL
pages - 轻量的page object库和组建
widgetastic - RedHat UI widget 组建框架
navmazing - PageObjects based navigation from RedHat- nightwatch - 基于python和selenium的UI 自动化测试框架. 灵感来源于nightwatch.js
extensions 扩展:
webdriver_manager - 主要目的是让不同版本的浏览器driver管理起来更加方便pytest_splinter - pytest spinter 和 selenium的集成
lettuce_webdriver - Selenium webdriver 的 lettuce封装
Browsermob Proxy - python的Browsermob Proxy封装
FireRobot - 一个Firefox的扩展,让你可以更高效的编写基于robot framework的selenium用例
pytractor - Python的selenium扩展,以便更好的测试angular.js应用
Selenium-Requests - 扩展 Selenium WebDriver类,包含了Requests库的一些功能,可以更方便的处理cookie和请求头
selenium-respectful - selenium的封装,可以并行访问站点
- appium - 开源的自动化测试框架,可以测试native/hybrid/mobile web应用。核心是基于webdriver协议进行了扩展
Winium.StoreApps - 开源的自动化测试用具,用来测试Windows Store应用,实现了Selenium Remote WebDriver- robotframework-androidlibrary - Robot Framework用来测试android应用的扩展库
- robotframework-appiumlibrary - appium的RobotFramework扩展
- robotframework-ioslibrary -Robot的ios测试扩展库
- uiautomator - Android uiautomator的python封装, 支持 Android 4.1+
ATX - 智能机自动化测试工具. 支持 iOS, Android, WebApp 和游戏
- Winium.Desktop - 测试Windows应用(主要是基于WinForms和WPF平台)的自动化测试工具实现了Selenium Remote WebDriver协议
- PyAutoGUI - 跨平台的GUI测试工具,支持通过python脚本控制键盘和鼠标
- robotframework-autoitlibrary - Robot Framework的windows GUI测试扩展
- autopy - 简单跨平台的GUI测试工具集
UISoup - 支持windows和MacOS平台的UI自动化(仅工作在x86平台)- pywinauto - 非常有python面向对象风格的GUI测试库,现已支持64位机器以及py2和py3
- SikuliX - 基于OpenCV的 GUI 测试框架, 使用图片识别技术,支持python2.7
- ldtp - 跨平台的linux GUI测试项目
- fMBT - 支持多平台的python GUI测试库
- SikuliX - 基于OpenCV的 GUI 测试框架, 使用图片识别技术,支持python2.7
- ATOMac - 通过Apple Accessibility API来测试Mac应用的python库
- PyAutoGUI - 跨平台的GUI测试工具,支持通过python脚本控制键盘和鼠标
- SikuliX - 基于OpenCV的 GUI 测试框架, 使用图片识别技术,支持python2.7
PS:这些都各有各的特点,自动化测试工具个人还是较喜欢这两个:
- windows上网页用Selenium
- 移动app上用AirtestIDE
本文只是简单的介绍了Python自动化测试所用到的一些测试工具和框架,同时也希望大家能找到适合自己的测试工具,并顺利开展测试工作。
这篇贴子到这里就结束了,最后,希望看这篇帖子的朋友能够有所收获。
如果你觉得文章还不错,请大家 点赞、分享、留言 下,因为这将是我持续输出更多优质文章的最强动力!