I am trying to parallelize hardware tests across several identical devices, each with its own COM-port. Ideally, I would like each pytest-xdist worker to know which port, and thus, device, that it has access to, so that each process would only execute its own share of the tests on a single port that doesn't change during the execution of the entire test suite. I don't yet have an idea for implementing this.
Passing COM Port Numbers to Workers in pytest-xdist
162 Views Asked by Filip Kunc At
1
There are 1 best solutions below
Related Questions in PYTHON
- How to store a date/time in sqlite (or something similar to a date)
- Instagrapi recently showing HTTPError and UnknownError
- How to Retrieve Data from an MySQL Database and Display it in a GUI?
- How to create a regular expression to partition a string that terminates in either ": 45" or ",", without the ": "
- Python Geopandas unable to convert latitude longitude to points
- Influence of Unused FFN on Model Accuracy in PyTorch
- Seeking Python Libraries for Removing Extraneous Characters and Spaces in Text
- Writes to child subprocess.Popen.stdin don't work from within process group?
- Conda has two different python binarys (python and python3) with the same version for a single environment. Why?
- Problem with add new attribute in table with BOTO3 on python
- Can't install packages in python conda environment
- Setting diagonal of a matrix to zero
- List of numbers converted to list of strings to iterate over it. But receiving TypeError messages
- Basic Python Question: Shortening If Statements
- Python and regex, can't understand why some words are left out of the match
Related Questions in PYTHON-3.X
- SQLAlchemy 2 Can't add additional column when specifying __table__
- Writes to child subprocess.Popen.stdin don't work from within process group?
- Platform Generation for a Sky Hop clone
- What's the best way to breakup a large test in pytest
- chess endgame engine in Python doesn't work perfectly
- Function to create matrix of zeros and ones, with a certain density of ones
- how to create a polars dataframe giving the colum-names from a list
- Django socketio process
- How to decode audio stream using tornado websocket?
- Getting website metadata (Excel VBA/Python)
- How to get text and other elements to display over the Video in Tkinter?
- Tkinter App - My Toplevel window is not appearing. App is stuck in mainloop
- Can I use local resources for mp4 playback?
- How to pass the value of a function of one class to a function of another with the @property decorator
- Python ModuleNotFoundError for command line tools built with setup.py
Related Questions in PYTEST
- What's the best way to breakup a large test in pytest
- Alternatives to pytest-watch on python unit test with pytest
- Flask Application Testing with pytest Returns 404 for Routes
- pytest mock failing when mocking function from imported package
- Difficult to run pytest with a fastAPI and ODM beanie, I get the error: beanie.exceptions.CollectionWasNotInitialized
- How to create an improperly closed gzip file using python?
- how to mock default_factory in pydantic model
- How to write pytest tests for a FastAPI route involving dependency injection with Pydantic models using Annotated and Depends?
- Issue with pytest-bdd execution after python and pytest-bdd version upgrade
- Pytest: When writing many assert statements in the same test function, some of it fails, but how to know which assert statement/s is causing failure?
- How can I tell pytest that for a function it is the correct behaviour (and only the correct behaviour) to have a failed assertion?
- Pytest mocking SQLalchmey
- Pytest PropertyMock not returning different attribute values
- Sporadic Windows fatal error on Github Python CI (may be joblib related)
- Pytest: in memory data doesn't persist through fixture
Related Questions in PYTEST-XDIST
- pytest, xdist, and sharing generated file dependencies
- pytest-xdist ssh: Pseudo-terminal will not be allocated because stdin is not a terminal
- pytest-xdistis failing when two tests read same file
- pytest-xdist fails to collect tests after identifying workers
- Pytest-allure filter by hosts
- Pytest parallel can I run test after all parallel finished?
- Pytest-xdist 3.40 and higher not honoring --exitfirst
- Set tests order while running tests in parallel
- Is there a downside to using too many threads with pytest-xdist?
- examples are not appearing in the feature object and scenario object of pytest-bdd
- Pytest-xdist cannot run after being packaged with pyinstaller
- A test fixture lock for downloading and writing data with pytest-xdist
- When using pytest-html with pytest-xdist plugin ,the report generated does not show screenshot for failed test case
- pytest xdist: different number of tests fail depending on number of workers
- Running a test using pytest-xdist is opening several tabs
Related Questions in COM-PORT
- How to increase baudrate on Device Manager Windows?
- Reading data from the COM port - Buffer Overflow
- Reading com port using asio library. The checksum does not match. Python->c++
- Virtual COM Port with Nucleo F103RB on Windows 11
- Aberrant data reading COM port in windows
- Determining "Standard Serial over Bluetooth Link" Outgoing COM port and reading from it
- HW0002 Tera Scanner comport to Keyboard Wedge
- Method SerialInputStream.read(byte[] bytes) returns 0 even though data is available for reading
- send amound to card reader
- C# code not working for read serial port device
- detect if device is connected to virtual serial port with jSerialComm
- Reading D70A weighing data from serial COM port with Java
- Data corruption issue in Java program using jSerialComm library, but in C# it is OK
- pySerial getting empty read from Linux COM USB
- MS Excel add-in Datastream doesn't send CR LF characters to serial line
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
The solution I went with was to use the fact that conftest.py can be used to overwrite fixtures in pytest together with some metaprogramming:
Ceate a file with the definitions of your devices (labels, comports, etc.), then,create a subfolder per device and copy your test suites inside.
Create a copy of your main conftest.py at the top level of each device's directory, use metaprogramming to replace the variables needed by the fixtures inside your conftest.py to use the device's parameters.
Add an
__init__.pyto the top level of the device's test suite to turn it into a package and scope your fixtures to 'package' level.Finally add the xdist mark to your tests with
groupset to your device's unique label.Hope this helps anyone who might encounter a similar issue.