lotus/testplans
Eng Zer Jun abef90423d
refactor: use os.ReadDir for lightweight directory reading
`os.ReadDir` was added in Go 1.16 as part of the deprecation of `ioutil`
package. It is a more efficient implementation than `ioutil.ReadDir`.

Reference: https://pkg.go.dev/io/ioutil#ReadDir
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
2022-09-09 19:53:40 +08:00
..
composer Address more comments 2022-08-26 11:55:20 -04:00
dashboards
docker-images Address more comments 2022-08-26 11:55:20 -04:00
lotus-soup refactor: use os.ReadDir for lightweight directory reading 2022-09-09 19:53:40 +08:00
notes
DELVING.md
Makefile testplans: lotus-soup: new images with filecoin-ffi ; use default WPoStChallengeWindow 2021-06-07 11:28:24 +02:00
README-old-from-oni.md
README.md

Testground testplans for Lotus

This directory consists of testplans built to be run on Testground that exercise Lotus on TaaS.

Table of Contents

Testing topics

  • storage and retrieval deals:
    • end-to-end flows where clients store and retrieve pieces from miners, including stress testing the system.
  • payment channels:
    • stress testing payment channels via excessive lane creation, excessive payment voucher atomisation, and redemption.

Running the test cases

If you are unfamiliar with Testground, we strongly suggest you read the Testground Getting Started guide in order to learn how to install Testground and how to use it.

You can find various composition files describing various test scenarios built as part of Project Oni at lotus-soup/_compositions directory.

We've designed the test cases so that you can run them via the local:exec, local:docker and the cluster:k8s runners. Note that Lotus miners are quite resource intensive, requiring gigabytes of memory. Hence you would have to run these test cases on a beafy machine (when using local:docker and local:exec), or on a Kubernetes cluster (when using cluster:k8s).

Here are the basics of how to run the baseline deals end-to-end test case:

Running the baseline deals end-to-end test case

  1. Compile and Install Testground from source code.

  2. Run a Testground daemon

testground daemon
  1. Download required Docker images for the lotus-soup test plan
make pull-images

Alternatively you can build them locally with

make build-images
  1. Import the lotus-soup test plan into your Testground home directory
testground plan import --from ./lotus-soup
  1. Run a composition for the baseline deals end-to-end test case
testground run composition -f ./lotus-soup/_compositions/baseline-docker-5-1.toml