Best Python code snippet using pytest
implicit_mark.py
Source: implicit_mark.py
...30#-----------------------------------------------------------------------------31def pytest_addoption(parser):32 parser.addini("implicit_marker",33 "An implicit marker to assign to any test otherwise unmarked")34def pytest_collection_modifyitems(items, config):35 implicit_marker = config.getini("implicit_marker")36 if not implicit_marker:37 return38 markers = []39 for line in config.getini("markers"):40 mark, rest = line.split(":", 1)41 if '(' in mark:42 mark, rest = mark.split("(", 1)43 markers.append(mark)44 all_markers = ' or '.join(markers)45 if not all_markers:46 return47 for item in items:48 if not matchmark(item, all_markers):...
__impl.py
Source: __impl.py
...19 Args:20 config (_pytest.config.Config): current pytest config to modify21 """22 config.option.keepduplicates = True23def pytest_collection_modifyitems(24 session: pytest.Session,25 config: _pytest.config.Config,26 items: List[ExtendedItem],27) -> None:28 """29 pytest_collection_modifyitems hook to drop non-package versions of duplicate30 tests.31 Args:32 session (pytest.Session): current pytest Session33 config (_pytest.config.Config): current pytest Config34 items (List[ExtendedItem]): list of discovered tests35 """36 session = session # ignore unused var warning37 seen_best_nodes: Dict[str, ExtendedItem] = {}...
__init__.py
Source:__init__.py
1# def pytest_collection_modifyitems(session, config, items) :2# for item in items:3# item.name = item.name.encode('utf-8').decode('unicode-escape')4# item._nodeid = item.nodeid.encode('utf-8').decode('unicode-escape')5import logging6from typing import Tuple, Optional7import pytest8logging.basicConfig(level=logging.INFO,9 # æ¥å¿æ ¼å¼10 # æ¶é´ãä»£ç æå¨æä»¶åã代ç è¡å·ãæ¥å¿çº§å«ååãæ¥å¿ä¿¡æ¯11 format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',12 # æå°æ¥å¿çæ¶é´13 datefmt='%a, %d %b %Y %H:%M:%S',14 # æ¥å¿æä»¶åæ¾çç®å½ï¼ç®å½å¿
é¡»åå¨ï¼åæ¥å¿æä»¶å15 filename='report.log',16 # æå¼æ¥å¿æä»¶çæ¹å¼17 filemode='w'18 )19logger = logging.getLogger(__name__)20def pytest_collection_modifyitems(items):21 for item in items:22 item.name = item.name.encode('utf-8').decode('unicode_escape')23 item._nodeid = item._nodeid.encode('utf-8').decode('unicode_escape')24 logger.info(f"item.name : {item.name}")...
test_plugin.py
Source:test_plugin.py
...14 sha1.hexdigest = mock.Mock(side_effect=['1', '2', '3', '4'])15 hashlib.sha1 = mock.Mock(return_value=sha1)16 config = mock.Mock()17 read_circleci_env_variables_mock.return_value = (2, 0)18 pytest_collection_modifyitems('session', config, items)19 config.hook.pytest_deselected.assert_called_with(items=[item1, item3])20@mock.patch('pytest_circleci.plugin.hashlib')21@mock.patch('pytest_circleci.plugin.read_circleci_env_variables')22def test_second_container(read_circleci_env_variables_mock, hashlib):23 item1 = Item()24 item2 = Item()25 item3 = Item()26 item4 = Item()27 items = [item1, item2, item3, item4]28 sha1 = mock.sentinel29 sha1.hexdigest = mock.Mock(side_effect=['1', '2', '3', '4'])30 hashlib.sha1 = mock.Mock(return_value=sha1)31 config = mock.Mock()32 read_circleci_env_variables_mock.return_value = (2, 1)33 pytest_collection_modifyitems('session', config, items)...
How do I check whether a file exists without exceptions?
Qt Designer displaying in real time the output of a python script
How to identify the rerun mode using pytest-rerunfailures?
How to set argparse arguments from python script
StringIO portability between python2 and python3 when capturing stdout
Using the keyboard interrupt hook in pytest
Customize pytest collecting tests
unsplitting audio file in python
Using python to write text files with DOS line endings on linux
Meaning of @classmethod and @staticmethod for beginner
If the reason you're checking is so you can do something like if file_exists: open_it()
, it's safer to use a try
around the attempt to open it. Checking and then opening risks the file being deleted or moved or something between when you check and when you try to open it.
If you're not planning to open the file immediately, you can use os.path.isfile
Return
True
if path is an existing regular file. This follows symbolic links, so both islink() and isfile() can be true for the same path.
import os.path
os.path.isfile(fname)
if you need to be sure it's a file.
Starting with Python 3.4, the pathlib
module offers an object-oriented approach (backported to pathlib2
in Python 2.7):
from pathlib import Path
my_file = Path("/path/to/file")
if my_file.is_file():
# file exists
To check a directory, do:
if my_file.is_dir():
# directory exists
To check whether a Path
object exists independently of whether is it a file or directory, use exists()
:
if my_file.exists():
# path exists
You can also use resolve(strict=True)
in a try
block:
try:
my_abs_path = my_file.resolve(strict=True)
except FileNotFoundError:
# doesn't exist
else:
# exists
Looking for an in-depth tutorial around pytest? LambdaTest covers the detailed pytest tutorial that has everything related to the pytest, from setting up the pytest framework to automation testing. Delve deeper into pytest testing by exploring advanced use cases like parallel testing, pytest fixtures, parameterization, executing multiple test cases from a single file, and more.
Skim our below pytest tutorial playlist to get started with automation testing using the pytest framework.
https://www.youtube.com/playlist?list=PLZMWkkQEwOPlcGgDmHl8KkXKeLF83XlrP
Get 100 minutes of automation test minutes FREE!!