当前位置: 首页 > news >正文

vscode中配置pytest

在测试用例中使用print的设置方法

零基础1小时快速入门pytest自动化测试教程,全套项目框架实战

在setting.json中输入一下内容:

复制代码

    "python.testing.pytestArgs": [".",  # 初始值为所有,理论上有了下面的,就不应该有该项目?可以考虑存在和不存在,查看对测试结果的影响"--capture=no",    # 表示控制台可以print输出"-q",   # 表示简化输出"-disable-warnings"    # 表示不显示警告信息],  "python.testing.unittestEnabled": false,"python.testing.nosetestsEnabled": false,"python.testing.pytestEnabled": true,"python.testing.promptToConfigure": false,"python.testing.autoTestDiscoverOnSaveEnabled": false,

复制代码

其中:"--capture=no"表示pytest不捕获测试用例中的print,那么在测试用例使用print时,就可以直接在控制台显示出来

介绍几个常用的参数:

  • -q: 简化结果信息,不会显示每个用例的文件名等;
  • -s:允许在结果中显示标准输出,比如你在用例中的打印信息,默认在结果中不会显示标准输出;
  • --capture=no:与 -s 效果一样,主要演示一下带参数值的写法;
  • -m mark:指定带相应标记的用例。用于演示不带等号的参数写法。

禁用警告信息

--disable-warnings

在python.testing.pytestArgs中添加如上信息,就可以禁用警告信息了。

若是想了解pytest中所有的命令行信息,可以使用:pytest --help,内容如下:

复制代码

usage: pytest [options] [file_or_dir] [file_or_dir] [...]positional arguments:file_or_dirgeneral:-k EXPRESSION         only run tests which match the given substringexpression. An expression is a python evaluatableexpression where all names are substring-matched againsttest names and their parent classes. Example: -k'test_method or test_other' matches all test functionsand classes whose name contains 'test_method' or'test_other', while -k 'not test_method' matches thosethat don't contain 'test_method' in their names. -k 'nottest_method and not test_other' will eliminate thematches. Additionally keywords are matched to classesand functions containing extra names in their'extra_keyword_matches' set, as well as functions whichhave names assigned directly to them.-m MARKEXPR           only run tests matching given mark expression. example:-m 'mark1 and not mark2'.--markers             show markers (builtin, plugin and per-project ones).-x, --exitfirst       exit instantly on first error or failed test.--maxfail=num         exit after first num failures or errors.--strict-markers, --strictmarkers not registered in the `markers` section of theconfiguration file raise errors.-c file               load configuration from `file` instead of trying tolocate one of the implicit configuration files.--continue-on-collection-errorsForce test execution even if collection errors occur.--rootdir=ROOTDIR     Define root directory for tests. Can be relative path:'root_dir', './root_dir', 'root_dir/another_dir/';absolute path: '/home/user/root_dir'; path withvariables: '$HOME/root_dir'.--fixtures, --funcargsshow available fixtures, sorted by plugin appearance(fixtures with leading '_' are only shown with '-v')--fixtures-per-test   show fixtures per test--import-mode={prepend,append}prepend/append to sys.path when importing test modules,default is to prepend.--pdb                 start the interactive Python debugger on errors orKeyboardInterrupt.--pdbcls=modulename:classnamestart a custom interactive Python debugger on errors.For example:--pdbcls=IPython.terminal.debugger:TerminalPdb--trace               Immediately break when running each test.--capture=method      per-test capturing method: one of fd|sys|no.-s                    shortcut for --capture=no.--runxfail            report the results of xfail tests as if they were notmarked--lf, --last-failed   rerun only the tests that failed at the last run (or allif none failed)--ff, --failed-first  run all tests but run the last failures first. This mayre-order tests and thus lead to repeated fixturesetup/teardown--nf, --new-first     run tests from new files first, then the rest of thetests sorted by file mtime--cache-show=[CACHESHOW]show cache contents, don't perform collection or tests.Optional argument: glob (default: '*').--cache-clear         remove all cache contents at start of test run.--lfnf={all,none}, --last-failed-no-failures={all,none}which tests to run with no previously (known) failures.--sw, --stepwise      exit on test failure and continue from last failing testnext time--stepwise-skip       ignore the first failing test but stop on the nextfailing test--arraydiff           Enable comparison of arrays to reference arrays storedin files--arraydiff-generate-path=ARRAYDIFF_GENERATE_PATHdirectory to generate reference files in, relative tolocation where py.test is run--arraydiff-reference-path=ARRAYDIFF_REFERENCE_PATHdirectory containing reference files, relative tolocation where py.test is run--arraydiff-default-format=ARRAYDIFF_DEFAULT_FORMATDefault format for the reference arrays (can be 'fits'or 'text' currently)reporting:--durations=N         show N slowest setup/test durations (N=0 for all).-v, --verbose         increase verbosity.-q, --quiet           decrease verbosity.--verbosity=VERBOSE   set verbosity. Default is 0.-r chars              show extra test summary info as specified by chars:(f)ailed, (E)rror, (s)kipped, (x)failed, (X)passed,(p)assed, (P)assed with output, (a)ll except passed(p/P), or (A)ll. (w)arnings are enabled by default (see--disable-warnings).--disable-warnings, --disable-pytest-warningsdisable warnings summary-l, --showlocals      show locals in tracebacks (disabled by default).--tb=style            traceback print mode (auto/long/short/line/native/no).--show-capture={no,stdout,stderr,log,all}Controls how captured stdout/stderr/log is shown onfailed tests. Default is 'all'.--full-trace          don't cut any tracebacks (default is to cut).--color=color         color terminal output (yes/no/auto).--pastebin=mode       send failed|all info to bpaste.net pastebin service.--junit-xml=path      create junit-xml style report file at given path.--junit-prefix=str    prepend prefix to classnames in junit-xml output--result-log=path     DEPRECATED path for machine-readable result log.collection:--collect-only, --co  only collect tests, don't execute them.--pyargs              try to interpret all arguments as python packages.--ignore=path         ignore path during collection (multi-allowed).--ignore-glob=path    ignore path pattern during collection (multi-allowed).--deselect=nodeid_prefixdeselect item during collection (multi-allowed).--confcutdir=dir      only load conftest.py's relative to specified dir.--noconftest          Don't load any conftest.py files.--keep-duplicates     Keep duplicate tests.--collect-in-virtualenvDon't ignore tests in a local virtualenv directory--doctest-modules     run doctests in all .py modules--doctest-report={none,cdiff,ndiff,udiff,only_first_failure}choose another output format for diffs on doctestfailure--doctest-glob=pat    doctests file matching pattern, default: test*.txt--doctest-ignore-import-errorsignore doctest ImportErrors--doctest-continue-on-failurefor a given doctest, continue to run after the firstfailuretest session debugging and configuration:--basetemp=dir        base temporary directory for this test run.(warning:this directory is removed if it exists)--version             display pytest lib version and import information.-h, --help            show help message and configuration info-p name               early-load given plugin module name or entry point(multi-allowed). To avoid loading of plugins, use the`no:` prefix, e.g. `no:doctest`.--trace-config        trace considerations of conftest.py files.--debug               store internal tracing debug information in'pytestdebug.log'.-o OVERRIDE_INI, --override-ini=OVERRIDE_INIoverride ini option with "option=value" style, e.g. `-oxfail_strict=True -o cache_dir=cache`.--assert=MODE         Control assertion debugging tools. 'plain' performs noassertion debugging. 'rewrite' (the default) rewritesassert statements in test modules on import to provideassert expression information.--setup-only          only setup fixtures, do not execute tests.--setup-show          show setup of fixtures while executing tests.--setup-plan          show what fixtures and tests would be executed but don'texecute anything.pytest-warnings:-W PYTHONWARNINGS, --pythonwarnings=PYTHONWARNINGSset which warnings to report, see -W option of pythonitself.logging:--no-print-logs       disable printing caught logs on failed tests.--log-level=LOG_LEVELlogging level used by the logging module--log-format=LOG_FORMATlog format as used by the logging module.--log-date-format=LOG_DATE_FORMATlog date format as used by the logging module.--log-cli-level=LOG_CLI_LEVELcli logging level.--log-cli-format=LOG_CLI_FORMATlog format as used by the logging module.--log-cli-date-format=LOG_CLI_DATE_FORMATlog date format as used by the logging module.--log-file=LOG_FILE   path to a file when logging will be written to.--log-file-level=LOG_FILE_LEVELlog file logging level.--log-file-format=LOG_FILE_FORMATlog format as used by the logging module.--log-file-date-format=LOG_FILE_DATE_FORMATlog date format as used by the logging module.--log-auto-indent=LOG_AUTO_INDENTAuto-indent multiline messages passed to the loggingmodule. Accepts true|on, false|off or an integer.Hypothesis:--hypothesis-profile=HYPOTHESIS_PROFILELoad in a registered hypothesis.settings profile--hypothesis-verbosity={quiet,normal,verbose,debug}Override profile with verbosity setting specified--hypothesis-show-statisticsConfigure when statistics are printed--hypothesis-seed=HYPOTHESIS_SEEDSet a seed to use for all Hypothesis testsastropy header options:--astropy-header      Show the pytest-astropy header--astropy-header-packages=ASTROPY_HEADER_PACKAGESComma-separated list of packages to include in theheadercustom options:--doctest-plus        enable running doctests with additional features notfound in the normal doctest plugin--doctest-rst         Enable running doctests in .rst documentation. This isno longer recommended, use --doctest-glob instead.--text-file-format=TEXT_FILE_FORMATText file format for narrative documentation. Optionsaccepted are 'txt', 'tex', and 'rst'. This is no longerrecommended, use --doctest-glob instead.--doctest-plus-atol=DOCTEST_PLUS_ATOLset the absolute tolerance for float comparison--doctest-plus-rtol=DOCTEST_PLUS_RTOLset the relative tolerance for float comparison--doctest-only        Test only doctests. Implies usage of doctest-plus.--open-files          fail if any test leaves files open--remote-data=[REMOTE_DATA]run tests with online data[pytest] ini-options in the first pytest.ini|tox.ini|setup.cfg file found:markers (linelist):   markers for test functionsempty_parameter_set_mark (string):default marker for empty parametersetsnorecursedirs (args): directory patterns to avoid for recursiontestpaths (args):     directories to search for tests when no files ordirectories are given in the command line.usefixtures (args):   list of default fixtures to be used with this projectpython_files (args):  glob-style file patterns for Python test modulediscoverypython_classes (args):prefixes or glob names for Python test class discoverypython_functions (args):prefixes or glob names for Python test function andmethod discoverydisable_test_id_escaping_and_forfeit_all_rights_to_community_support (bool):disable string escape non-ascii characters, might causeunwanted side effects(use at your own risk)console_output_style (string):console output: "classic", or with additional progressinformation ("progress" (percentage) | "count").xfail_strict (bool):  default for the strict parameter of xfail markers whennot given explicitly (default: False)enable_assertion_pass_hook (bool):Enables the pytest_assertion_pass hook.Make sure todelete any previously generated pyc cache files.junit_suite_name (string):Test suite name for JUnit reportjunit_logging (string):Write captured log messages to JUnit report: one ofno|system-out|system-errjunit_log_passing_tests (bool):Capture log information for passing tests to JUnitreport:junit_duration_report (string):Duration time to report: one of total|calljunit_family (string):Emit XML for schema: one of legacy|xunit1|xunit2doctest_optionflags (args):option flags for doctestsdoctest_encoding (string):encoding used for doctest filescache_dir (string):   cache directory path.filterwarnings (linelist):Each line specifies a pattern forwarnings.filterwarnings. Processed after-W/--pythonwarnings.log_print (bool):     default value for --no-print-logslog_level (string):   default value for --log-levellog_format (string):  default value for --log-formatlog_date_format (string):default value for --log-date-formatlog_cli (bool):       enable log display during test run (also known as "livelogging").log_cli_level (string):default value for --log-cli-levellog_cli_format (string):default value for --log-cli-formatlog_cli_date_format (string):default value for --log-cli-date-formatlog_file (string):    default value for --log-filelog_file_level (string):default value for --log-file-levellog_file_format (string):default value for --log-file-formatlog_file_date_format (string):default value for --log-file-date-formatlog_auto_indent (string):default value for --log-auto-indentfaulthandler_timeout (string):Dump the traceback of all threads if a test takes morethan TIMEOUT seconds to finish. Not available onWindows.addopts (args):       extra command line optionsminversion (string):  minimally required pytest versionastropy_header (bool):Show the pytest-astropy headerastropy_header_packages (linelist):Comma-separated list of packages to include in theheadertext_file_format (string):Default format for docs. This is no longer recommended,use --doctest-glob instead.doctest_optionflags (args):option flags for doctestsdoctest_plus (string):enable running doctests with additional features notfound in the normal doctest plugindoctest_norecursedirs (args):like the norecursedirs option but applies only todoctest collectiondoctest_rst (string): Run the doctests in the rst documentationdoctest_plus_atol (string):set the absolute tolerance for float comparisondoctest_plus_rtol (string):set the relative tolerance for float comparisontext_file_comment_chars (linelist):list of pairs in format file_extension=comment_chars,eg: .rst=..open_files_ignore (args):when used with the --open-files option, allowsspecifying names of files that may be ignored when leftopen between tests--files in this list are matched maybe specified by their base name (ignoring their fullpath) or by absolute pathremote_data_strict (bool):If 'True', tests will fail if they attempt to access theinternet but are not explicitly marked with'remote_data'environment variables:PYTEST_ADDOPTS           extra command line optionsPYTEST_PLUGINS           comma-separated plugins to load during startupPYTEST_DISABLE_PLUGIN_AUTOLOAD set to disable plugin auto-loadingPYTEST_DEBUG             set to enable debug tracing of pytest's internalsto see available markers type: pytest --markers
to see available fixtures type: pytest --fixtures
(shown according to specified file_or_dir or current dir if not specified; fixtures with leading '_' are only shown with the '-v' option

复制代码


文章转载自:

http://VHUrWb8N.pctsq.cn
http://OUoxHuNf.pctsq.cn
http://f95QfI7Q.pctsq.cn
http://YugJbggl.pctsq.cn
http://8HkgAf5F.pctsq.cn
http://TvnphKT9.pctsq.cn
http://QNRFtaA2.pctsq.cn
http://gYx2UHby.pctsq.cn
http://w4xToMv2.pctsq.cn
http://QYK0DtnI.pctsq.cn
http://lPQtptSU.pctsq.cn
http://RCZuD9cC.pctsq.cn
http://BRfIAlVh.pctsq.cn
http://Du0U58gm.pctsq.cn
http://ari8zRgp.pctsq.cn
http://xGHJxKeC.pctsq.cn
http://bMs5d2mw.pctsq.cn
http://yNMFAQMQ.pctsq.cn
http://gpvjleu4.pctsq.cn
http://E276IQ8K.pctsq.cn
http://oQhohP1T.pctsq.cn
http://xv1DwjNQ.pctsq.cn
http://eb8Q3E4y.pctsq.cn
http://t6J4zwqE.pctsq.cn
http://BxK2mc2t.pctsq.cn
http://uLZznV8s.pctsq.cn
http://Hyz1H7xQ.pctsq.cn
http://qhMeTrCp.pctsq.cn
http://3tARgtRw.pctsq.cn
http://5g5jwp9Z.pctsq.cn
http://www.dtcms.com/a/387360.html

相关文章:

  • 液氮低温恒温器的应用领域
  • [Yolo遇到的问题] 使用VScode进行ultralytics训练 启动后在scanning阶段意外中断 导致训练无法正常启动
  • 微算法科技(NASDAQ:MLGO)研究分布式量子计算,释放量子计算潜能
  • 使用EasyExcel读不到数据的低级问题
  • 万象EXCEL开发(一)表头标尺搭建—东方仙盟筑基期
  • Redis 发展趋势与 Redis 7.x 新特性:从缓存到实时数据平台的演进
  • 微信小程序 tabBar 切换实现
  • 微信小程序的跳转方式
  • 微信小程序---暮之沧蓝音乐小程序
  • springboot jar包部署到服务器上后,logback按日期归档不正确,今天的日志归档到昨天了,日志中的时间也不正确
  • Spring Boot Logback 日志配置详解:从基础到分布式追踪
  • 辉视养老方案:重塑老年生活的温馨与安心
  • 通过商业智能(BI)可视化数据分析了解布洛芬的产销情况
  • 健康大数据专业能转行做医疗数据分析吗?
  • antiword为什么在ubuntu22.04上面不乱码,而在mac上出现乱码
  • Paperless-ngx v2.18.4在Ubuntu 24.04上的完整离线安装步骤(非Docker)
  • Ubuntu 18.04 搭建 Kubernetes 1.27.4 集群全流程(附问题排查)
  • Ubuntu 18.04 LTS 安装 6.10.10 内核
  • Windows 11 下使用 WSL2 安装 Ubuntu 22.04 步骤
  • 在 WSL 中通过 Bash 函数快速转换 Windows 路径为 Ansible/WSL 路径
  • 【ubuntu24.04】 nvidia-smi监控GPU 利用率
  • 《嵌入式硬件(十四):基于IMX6ULL的通用目的定时器(GPT)操作》
  • 鸿蒙Next Web调试与维测全攻略:从DevTools到专项测试
  • 基于运行设计域(ODD)的安全论证方法
  • 鸿蒙HarmonyOS界面开发-组件动态创建(一)
  • 网络安全风险评估中元模型构建与实例应用
  • 鸿蒙5.0应用开发——V2装饰器@ObservedV2和@Trace的使用
  • xkInfoScan 是一款集成化的网络信息收集与安全扫描工具,支持 IP / 域名 / URL /信息追踪多维度目标探测
  • 解决 Windows 系统下 TDengine 数据恢复及迁移问题
  • PocketBase 是一个‌开源的轻量级后端框架‌,基于 Go 语言开发