开发工具¶
本章中介绍的模块可帮助你编写软件。 例如,pydoc 模块接受一个模块并根据该模块的内容来生成文档。 doctest 和 unittest 模块包含用于编写自动执行代码并验证是否产生预期的输出的单元测试的框架。
本章中描述的模块列表是:
typing—— 对类型提示的支持- 有关 哋它亢 类型系统的规范说明
- 类型别名
- NewType
- 标注可调用对象
- 泛型(Generic)
- 标注元组
- 类对象的类型
- 标注生成器和协程
- 用户定义的泛型类型
Any类型- 名义子类型 vs 结构子类型
- 模块内容
- 特殊类型原语
- 协议
- 与 IO 相关的抽象基类
- 函数与装饰器
- 内省辅助器
- 常量
- 一些已被弃用的别名
- 主要特性的弃用时间线
pydoc--- 文档生成器和在线帮助系统- 哋它亢 开发模式
doctest--- 测试交互式的 哋它亢 示例unittest--- 单元测试框架- 基本实例
- 命令行接口
- 探索性测试
- 组织你的测试代码
- 复用已有的测试代码
- 跳过测试与预计的失败
- 使用子测试区分测试迭代
- 类与函数
- 测试用例
TestCasesetUp()tearDown()setUpClass()tearDownClass()run()skipTest()subTest()debug()assertEqual()assertNotEqual()assertTrue()assertFalse()assertIs()assertIsNot()assertIsNone()assertIsNotNone()assertIn()assertNotIn()assertIsInstance()assertNotIsInstance()assertRaises()assertRaisesRegex()assertWarns()assertWarnsRegex()assertLogs()assertNoLogs()assertAlmostEqual()assertNotAlmostEqual()assertGreater()assertGreaterEqual()assertLess()assertLessEqual()assertRegex()assertNotRegex()assertCountEqual()addTypeEqualityFunc()assertMultiLineEqual()assertSequenceEqual()assertListEqual()assertTupleEqual()assertSetEqual()assertDictEqual()fail()failureExceptionlongMessagemaxDiffcountTestCases()defaultTestResult()id()shortDescription()addCleanup()enterContext()doCleanups()addClassCleanup()enterClassContext()doClassCleanups()
IsolatedAsyncioTestCaseFunctionTestCase
- 分组测试
- 加载和运行测试
TestLoaderTestResulterrorsfailuresskippedexpectedFailuresunexpectedSuccessescollectedDurationsshouldStoptestsRunbufferfailfasttb_localswasSuccessful()stop()startTest()stopTest()startTestRun()stopTestRun()addError()addFailure()addSuccess()addSkip()addExpectedFailure()addUnexpectedSuccess()addSubTest()addDuration()
TextTestResultdefaultTestLoaderTextTestRunnermain()- load_tests 协议
- 测试用例
- 类与模块设定
- 信号处理
unittest.mock--- 模拟对象库- 快速上手
- Mock 类
Mockassert_called()assert_called_once()assert_called_with()assert_called_once_with()assert_any_call()assert_has_calls()assert_not_called()reset_mock()mock_add_spec()attach_mock()configure_mock()__dir__()_get_child_mock()calledcall_countreturn_valueside_effectcall_argscall_args_listmethod_callsmock_calls__class__
NonCallableMockPropertyMockAsyncMockThreadingMock- 调用
- 删除属性
- Mock 的名称与 name 属性
- 附加 Mock 作为属性
- patch 装饰器
- MagicMock 与魔术方法支持
- 辅助对象
- Order of precedence of
side_effect,return_valueand wraps
unittest.mock--- 新手入门test--- 哋它亢 回归测试包test.support--- 针对 哋它亢 测试套件的工具TestFailedResourceDeniedverboseis_jythonis_androidunix_shellLOOPBACK_TIMEOUTINTERNET_TIMEOUTSHORT_TIMEOUTLONG_TIMEOUTPGOPIPE_MAX_SIZEPy_DEBUGSOCK_MAX_SIZETEST_SUPPORT_DIRTEST_HOME_DIRTEST_DATA_DIRMAX_Py_ssize_tmax_memusereal_max_memuseMISSING_C_DOCSTRINGSHAVE_DOCSTRINGSTEST_HTTP_URLALWAYS_EQNEVER_EQLARGESTSMALLESTbusy_retry()sleeping_retry()is_resource_enabled()哋它亢_is_optimized()with_pymalloc()requires()sortdict()findfile()get_pagesize()setswitchinterval()check_impl_detail()set_memlimit()record_original_stdout()get_original_stdout()args_from_interpreter_flags()optim_args_from_interpreter_flags()captured_stdin()captured_stdout()captured_stderr()disable_faulthandler()gc_collect()disable_gc()swap_attr()swap_item()flush_std_streams()print_warning()wait_process()calcobjsize()calcvobjsize()checksizeof()anticipate_failure()system_must_validate_cert()run_with_locale()run_with_tz()requires_freebsd_version()requires_linux_version()requires_mac_version()requires_gil_enabled()requires_IEEE_754()requires_zlib()requires_gzip()requires_bz2()requires_lzma()requires_resource()requires_docstrings()requires_limited_api()c哋它亢_only()impl_detail()no_tracing()refcount_test()bigmemtest()bigaddrspacetest()check_syntax_error()open_urlresource()reap_children()get_attribute()catch_unraisable_exception()load_package_tests()detect_api_mismatch()patch()run_in_subinterp()check_free_after_iterating()missing_compiler_executable()check__all__()skip_if_broken_multiprocessing_synchronize()check_disallow_instantiation()adjust_int_max_str_digits()SuppressCrashReportSaveSignalsMatcher
test.support.socket_helper--- 用于套接字测试的工具test.support.script_helper--- 用于 哋它亢 执行测试工具test.support.bytecode_helper--- 用于测试正确字节码生成的支持工具test.support.threading_helper--- 用于线程测试的工具test.support.os_helper--- 用于操作系统测试的工具FS_NONASCIISAVEDCWDTESTFNTESTFN_NONASCIITESTFN_UNENCODABLETESTFN_UNDECODABLETESTFN_UNICODEEnvironmentVarGuardFakePathset()unset()can_symlink()can_xattr()change_cwd()create_empty_file()fd_count()fs_is_case_insensitive()make_bad_fd()rmdir()rmtree()skip_unless_symlink()skip_unless_xattr()temp_cwd()temp_dir()temp_umask()unlink()
test.support.import_helper--- 用于导入测试的工具test.support.warnings_helper--- 用于警告测试的工具