-
KR1: Improve programmability and readability of integration-test.
-
Extract common behaviors. Our test cases are always complicated, usually because they act complicated steps to construct the testing context or check the status of the things. Extracting those common behaviors is a way to reduce complexity. Our vision is, with fewer codes and documents, that a new programmer takes less effort to read and write test cases.
- Mining
- Block construction
- Transaction construction
- Chain construction
- Chain/block/transaction status checking
- Network protocol, including sending, receiving, checking messages and node's status
- Improve the message receiving interface of
Net
controller. More specifically, different peers correspond to different message channels. Net
controller holds peer-ids inside.- Reduce the usage of redundant constants, like
DEFAULT_TX_PROPOSAL_WINDOW
-
Reduce debugging difficulty.
- Impl event log mechanism
- Add verbose event logs inside util functions.
- Distinguish different logs corresponding to different cases.
-
-
KR2: Staging network as an experimental network
- Add more key metrics inside ckb node
- TPSBench experiments more evaluation methods and params. Feedback onto issues.
-
KR1: Network testing suites
- Publish testground-sdk-rust
- Run network testing cases periodically
-
KR2: Add more integration tests to cover new features
- chain freezer
-
KR3: QA flow