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

Encode test case information into id of jsonrpc calls #65

Open
aion-kelvin opened this issue Jun 12, 2019 · 0 comments
Open

Encode test case information into id of jsonrpc calls #65

aion-kelvin opened this issue Jun 12, 2019 · 0 comments

Comments

@aion-kelvin
Copy link
Contributor

With the ConcurrentRunner, multiple test cases execute concurrently. Many test cases print out the jsonrpc calls that they make, to provide the user with some information about what the test is doing.

When there is a large number of tests, it is a bit hard to figure out which test sent which transaction. The ConcurrentRunner prints out a header of the test name before the jsonrpc calls are printed, which helps, but it is still hard to grep. Also if looking at logs from kernel side, it's hard to see what request corresponds to what test case. Furthermore, when trying to reproduce an issue that arises due to concurrent execution of transactions, it is hard to see the temporal ordering of these calls.

jsonrpc calls have an "id" field that can be a string. I propose that we encode the test case and sequence number of the rpc call into this id. One possible way: put threadId or test case name or some kind of test case id into the "id" field. Also put a sequence number (can be implemented by a counter that is per-test-case or global to the entire ConcurrentSuite or put both). Separate the fields with some kind of punctuation

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant