Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

one process - one dut (RDT-520) #224

Closed
horw opened this issue Aug 10, 2023 · 2 comments
Closed

one process - one dut (RDT-520) #224

horw opened this issue Aug 10, 2023 · 2 comments
Labels
enhancement New feature or request

Comments

@horw
Copy link
Collaborator

horw commented Aug 10, 2023

Introdution
I suggest key issue why pytest-embedded can't use multiprocessing rn lies in the fact that dut object init in the main process, and after init we try to pass this object to another process, there are not clear usage of object replica.

Related
#162

Thoughts
Pytest-embedded is a test framework, and maybe its possible separate responsibility between test and controlling device tasks.
Pytest-embedded can implement main process like a publisher, which only responsible for tasks and results, its don't worry about dut itself. Dut-control processes are subscribers, when one of them receive commands, it start work around how to run this test case, this means publisher delegate this responsibility. Every dut init in this dut-control processes inside, through main process collect class parameters and send them to dut-control processes. Maybe here we also can delegate responsibility of collection parameters to dut-control, and just send needed console args parameters.

Schema
image

Summary
In this way pytest-embedded objects responsibility will be more clear. And it will help pytest-embedded framework achieve better results in task parallelism.

@horw horw added the enhancement New feature or request label Aug 10, 2023
@github-actions github-actions bot changed the title one process - one dut one process - one dut (RDT-520) Aug 10, 2023
@hfudev
Copy link
Member

hfudev commented Aug 10, 2023

related #162

@horw
Copy link
Collaborator Author

horw commented Sep 1, 2023

It not possible to implement it, because need refactor all methods and api. Also have some issue with support: on one side need update api, and on another side need update client logic(dut), double work.

@horw horw closed this as completed Sep 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants