python-常用的库及常用函数

开发

Python 在后端和前端开发中都有广泛的应用。下面分别介绍一些常用的库和常用函数。

后端开发

Web 框架
  • Flask: 一个轻量级的 Web 框架,适合小型到中型的应用。

    • 常用函数:Flask(__name__), route(), render_template(), request 等。
  • Django: 一个功能强大的 Web 框架,遵循 MVC 设计模式,适合大型项目。

    • 常用函数/方法:models.py 中的模型定义,views.py 中的视图函数,urls.py 中的路由定义,以及 ORM 相关的查询方法。
数据库
  • SQLAlchemy: ORM 库,用于与关系型数据库交互。

    • 常用函数/方法:session.add(), session.commit(), session.query() 等。
  • psycopg2: PostgreSQL 数据库的适配器。

    • 常用函数/方法:执行 SQL 查询,处理结果等。
认证和授权
  • Flask-Login: 提供用户会话管理的扩展。

    • 常用函数/方法:login_user(), logout_user(), current_user 等。
  • Flask-JWT-Extended: 用于处理 JSON Web Tokens (JWT) 的扩展。

    • 常用函数/方法:create_access_token(), verify_jwt_in_request() 等。
API 开发
  • Flask-RESTful: 用于构建 RESTful API 的扩展。

    • 常用函数/方法:定义资源类,使用 marshal 进行数据序列化等。
其他工具
  • requests: 用于发送 HTTP 请求。

    • 常用函数:get(), post(), json() 等。
  • Python Decouple: 用于管理环境变量的库。

    • 常用函数/方法:从 .env 文件中加载配置。

前端开发

虽然 Python 主要用于后端开发,但也有一些库和工具可以用于前端开发。

模板引擎
  • Jinja2: Flask 默认的模板引擎。

    • 常用函数/方法:控制结构(如 for, if),变量插值({{ variable }}),过滤器等。
前端框架
  • Pyodide: 在浏览器中运行 Python 的库,可以与 JavaScript 前端框架(如 React、Vue)结合使用。
数据可视化
  • Plotly: 创建交互式图表的库。

    • 常用函数/方法:创建图表的各种函数,如 go.Bar(), go.Scatter() 等。
  • Bokeh: 用于数据可视化的交互式绘图库。

    • 常用函数/方法:ColumnDataSource(), figure(), show() 等。
Web 开发
  • Brython: Python 3 在浏览器中运行的实现,用于开发 Web 应用。
其他工具
  • PyWebIO: 基于 Web 的简易 Python 输入输出库,用于快速创建基于 Web 的小工具。

需要注意的是,这里列出的只是部分常用的库和函数。实际上,Python 生态系统中还有大量的库和工具可供选择,具体选择哪个取决于你的项目需求和个人偏好。

UI自动化

UI自动化测试中,常用的库及其相关的常用函数如下:

Selenium

Selenium是一个用于Web应用程序测试的工具,它支持多种浏览器,并提供了丰富的API来进行UI自动化测试。

常用函数:

  • webdriver.Chrome(): 初始化Chrome浏览器驱动。
  • webdriver.Firefox(): 初始化Firefox浏览器驱动。
  • driver.get(url): 打开指定的URL。
  • driver.find_element_by_id(), driver.find_element_by_name(), driver.find_element_by_xpath(), driver.find_element_by_css_selector(): 根据不同的选择器查找页面元素。
  • element.click(): 点击元素。
  • element.send_keys(text): 在元素中输入文本。
  • driver.quit(): 关闭浏览器。

Appium

Appium是一个用于移动应用(iOS和Android)的自动化测试框架,它允许你使用WebDriver协议来测试原生、移动Web和混合应用。

常用函数:

  • webdriver.Remote(): 连接到Appium服务器并初始化WebDriver会话。
  • driver.find_element_by_id(), driver.find_element_by_xpath(), driver.find_element_by_accessibility_id(), driver.find_element_by_class_name(): 在移动应用界面上查找元素。
  • element.click(): 点击移动应用界面上的元素。
  • driver.swipe(), driver.pinch(), driver.tap(): 执行手势操作,如滑动、捏放和点击。
  • driver.get_screenshot_as_file(): 获取当前屏幕截图并保存到文件。

PyAutoGUI

PyAutoGUI是一个Python模块,用于程序控制鼠标和键盘来自动化GUI交互。

常用函数:

  • pyautogui.moveTo(): 移动鼠标到指定位置。
  • pyautogui.click(): 在当前鼠标位置执行点击操作。
  • pyautogui.typewrite(text): 输入指定文本。
  • pyautogui.press(key): 按下并释放指定的键。
  • pyautogui.hotkey(key1, key2, ...): 发送热键组合。

Pywinauto

Pywinauto是一个用于Windows GUI自动化测试的库。

常用函数:

  • Application().start(path_to_executable): 启动一个Windows应用。
  • app.window(title=...): 选择一个窗口。
  • window.Button('Button text').click(): 点击窗口中的按钮。
  • window.Edit('Edit control').set_text('Some text'): 在编辑框中输入文本。
  • window.close(): 关闭窗口。

unittest

虽然unittest不是专门用于UI自动化的库,但它是Python的标准测试框架,经常与上述库结合使用来编写和管理UI测试用例。

常用函数:

  • unittest.TestCase: 创建测试用例类。
  • test_method(): 编写测试用例方法(通常以test_开头)。
  • self.assertEqual(expected, actual): 断言预期值和实际值是否相等。
  • self.assertTrue(condition): 断言条件是否为真。
  • unittest.main(): 运行所有测试用例。

这些库和函数提供了进行UI自动化测试所需的基本功能。具体使用哪个库和函数取决于你的测试需求,例如你要测试的是Web应用还是移动应用,以及你的测试环境。

接口自动化

在Python中进行接口自动化测试时,常用的库和函数包括:

1. requests

requests 是Python中一个非常流行的HTTP库,用于发送所有类型的HTTP请求。

常用函数:

  • requests.get(url, params=None, **kwargs): 发送GET请求。
  • requests.post(url, data=None, json=None, **kwargs): 发送POST请求。
  • requests.put(url, data=None, **kwargs): 发送PUT请求。
  • requests.delete(url, **kwargs): 发送DELETE请求。
  • response.status_code: 获取HTTP响应状态码。
  • response.json(): 解析JSON响应内容。
  • response.text: 获取响应的文本内容。
  • response.headers: 获取响应头信息。

2. unittest

unittest 是Python的标准测试框架,用于编写和运行测试用例。

常用函数/方法:

  • unittest.TestCase: 创建测试用例类。
  • test_method(): 编写测试用例方法(通常以test_开头)。
  • self.assertEqual(expected, actual): 断言预期值和实际值是否相等。
  • self.assertTrue(condition): 断言条件是否为真。
  • unittest.main(): 运行所有测试用例。

3. json

json 库用于处理JSON数据。

常用函数:

  • json.loads(s): 将JSON格式的字符串s解码为Python对象。
  • json.dumps(obj): 将Python对象obj编码为JSON格式的字符串。

4. pytest

pytest 是一个更现代、更灵活的测试框架,与unittest类似。

常用函数/方法:

  • pytest.mark.parametrize(): 参数化测试。
  • assert: 断言语句,用于验证测试条件。
  • pytest.fixture(): 定义测试前需要设置的固定装置(如数据库连接、配置加载等)。

5. mock

mock 库用于模拟对象和行为,以便在测试中替换实际对象或行为。

常用函数/方法:

  • mock.patch(): 用于模拟对象、方法或属性。
  • mock.Mock(): 创建一个模拟对象。
  • mock.call_args: 获取模拟对象被调用时的参数。
  • mock.assert_called_with(): 断言模拟对象是否以特定参数被调用。

6. HTTPBin

HTTPBin 是一个在线的HTTP请求和响应服务,常用于接口测试中的模拟后端。

常用URL:

  • /get: 测试GET请求。
  • /post: 测试POST请求。
  • /status/CODE: 返回指定HTTP状态码。

7. 其他库

  • responses: 用于模拟HTTP响应的库。
  • requests-mock: 用于模拟HTTP请求的库。
  • pytest-httpbin: 结合pytestHTTPBin的库,用于接口测试。

这些库和函数提供了接口自动化测试所需的基本功能,包括发送HTTP请求、编写测试用例、处理JSON数据、模拟对象和行为等。具体使用哪个库和函数取决于你的测试需求和个人偏好。

  • 7
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python有很多常用函数库,以下是其几个常见的函数库: 1. NumPy:NumPy是Python科学计算的核心库,提供了高性能的多维数组对象和用于处理这些数组的工具。它是许多其他科学计算库的基础。 2. Pandas:Pandas是一个数据处理和分析的强大库,提供了高效的数据结构和数据分析工具。它可以处理各种类型的数据,包括结构化和时间序列数据。 3. Matplotlib:Matplotlib是一个用于创建静态、动态和交互式可视化的库。它可以绘制各种类型的图表,如折线图、散点图、柱状图等。 4. Scikit-learn:Scikit-learn是一个用于机器学习的库,提供了各种常用的机器学习算法和工具。它包括分类、回归、聚类、降维等功能。 5. TensorFlow:TensorFlow是一个用于机器学习和深度学习的开源库,提供了丰富的工具和资源来构建和训练神经网络模型。 6. Keras:Keras是一个高级神经网络API,可以在多个深度学习框架上运行,包括TensorFlow、Theano和CNTK。它简化了神经网络模型的构建和训练过程。 7. BeautifulSoup:BeautifulSoup是一个用于解析HTML和XML文档的库,可以方便地提取和操作其的数据。 8. Requests:Requests是一个简洁而友好的HTTP库,用于发送HTTP请求和处理响应。 9. Django:Django是一个用于构建Web应用程序的高级Python框架,提供了许多开发Web应用所需的功能和工具。 10. Flask:Flask是一个轻量级的Web框架,适用于构建简单的Web应用程序和API。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值