requests-mock 项目教程
1. 项目的目录结构及介绍
requests-mock/
├── docs/
│ ├── conf.py
│ ├── index.rst
│ └── ...
├── requests_mock/
│ ├── adapter.py
│ ├── contrib/
│ │ └── ...
│ ├── exceptions.py
│ ├── fixture.py
│ ├── helpers.py
│ ├── LICENSE
│ ├── __init__.py
│ └── ...
├── tests/
│ ├── test_adapter.py
│ ├── test_contrib.py
│ ├── test_fixture.py
│ └── ...
├── .gitignore
├── .travis.yml
├── MANIFEST.in
├── README.rst
├── requirements.txt
├── setup.cfg
├── setup.py
└── tox.ini
目录结构介绍
- docs/: 包含项目的文档文件,如
conf.py
用于 Sphinx 文档配置,index.rst
是文档的主索引文件。 - requests_mock/: 核心代码目录,包含适配器 (
adapter.py
)、异常处理 (exceptions.py
)、测试工具 (fixture.py
) 等。 - tests/: 包含项目的测试文件,如
test_adapter.py
测试适配器功能。 - .gitignore: Git 忽略文件列表。
- .travis.yml: Travis CI 配置文件。
- MANIFEST.in: 包含需要打包的文件列表。
- README.rst: 项目说明文档。
- requirements.txt: 项目依赖列表。
- setup.cfg: 安装配置文件。
- setup.py: 安装脚本。
- tox.ini: Tox 配置文件,用于多环境测试。
2. 项目的启动文件介绍
项目的启动文件主要是 setup.py
,它负责项目的安装和分发。以下是 setup.py
的主要内容:
from setuptools import setup, find_packages
setup(
name='requests-mock',
version='1.12.1',
description='Mock out responses from the requests package',
long_description=open('README.rst').read(),
author='Jamie Lennox',
author_email='jamielennox@gmail.com',
url='https://github.com/jamielennox/requests-mock',
packages=find_packages(),
install_requires=[
'requests>=2.3.0',
],
classifiers=[
'Development Status :: 5 - Production/Stable',
'Intended Audience :: Developers',
'License :: OSI Approved :: Apache Software License',
'Programming Language :: Python',
'Programming Language :: Python :: 2',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
],
)
启动文件介绍
- name: 项目名称。
- version: 项目版本。
- description: 项目简短描述。
- long_description: 项目详细描述,通常从
README.rst
读取。 - author: 项目作者。
- author_email: 作者邮箱。
- url: 项目主页。
- packages: 需要包含的包,使用
find_packages()
自动查找。 - install_requires: 项目依赖列表。
- classifiers: 项目分类信息。
3. 项目的配置文件介绍
项目的配置文件主要包括 setup.cfg
和 tox.ini
。
setup.cfg
setup.cfg
文件用于配置安装过程中的各种选项,例如测试命令、代码风格检查等。以下是部分内容:
[flake8]
max-line-length = 120
ignore = E203, E266, E501, W503
[tool:pytest]
addopts = --flake8 --cov=requests_mock --cov-report=term-missing
test