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

PBT: Write ADR for property-based testing #1987

Open
p-offtermatt opened this issue Jun 24, 2024 · 1 comment
Open

PBT: Write ADR for property-based testing #1987

p-offtermatt opened this issue Jun 24, 2024 · 1 comment
Assignees
Labels
scope: ADR Architecture Decision Records scope: testing Code review, testing, making sure the code is following the specification.

Comments

@p-offtermatt
Copy link
Contributor

Problem

Our current tests on ICS are mostly manually written, which
necessarily means they can only cover scenarios that a human
has come up with.
We want a form of randomized tests that test invariants/correctness properties.

Closing criteria

We have an ADR for the infrastructure for Property-Based Testing.

Problem details

Previous approaches for this problem include difftesting and MBT.
The downside of those approaches is that they need a
re-implementation of the system-under-test.

Instead, we want to do property-based testing, where
only correctness properties have to be written.

@p-offtermatt p-offtermatt added scope: ADR Architecture Decision Records and removed needs-triage labels Jun 24, 2024
@p-offtermatt
Copy link
Contributor Author

Keeping some notes for the ADR here:

We need 4 components for PBT:

It might be possible to reuse many things from the cosmos sdk simulator and the existing MBT driver utilizing ibc-go.
Potentially, the best way to frame this is to expand the Cosmos SDK simulator with capability for multi-chain interactions.

@p-offtermatt p-offtermatt self-assigned this Jun 25, 2024
@mpoke mpoke added the scope: testing Code review, testing, making sure the code is following the specification. label Sep 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
scope: ADR Architecture Decision Records scope: testing Code review, testing, making sure the code is following the specification.
Projects
Status: 📥 F2: Todo
Development

No branches or pull requests

2 participants