@@ -28,90 +28,3 @@ INTEGRATION_TESTS=1 cargo test --package tips-system-tests --test integration_te
2828Defaults:
2929- Kafka configs: ` docker/host-*.properties ` (override with the standard ` TIPS_INGRESS_KAFKA_* ` env vars if needed).
3030- URLs: ` http://localhost:8080 ` ingress, ` http://localhost:8547 ` sequencer (override via ` INGRESS_URL ` / ` SEQUENCER_URL ` ).
31- # TIPS E2E Tests
32-
33- End-to-end integration tests and load testing tools for the TIPS (Transaction Inclusion Protocol Service) system.
34-
35- ## Overview
36-
37- This crate provides:
38- 1 . ** Integration Tests** - Discrete test scenarios for TIPS functionality
39- 2 . ** Load Testing Runner** - Multi-wallet concurrent load testing tool
40-
41- ## Prerequisites
42-
43- All tests require the full infrastructure from ` SETUP.md ` running:
44- - TIPS ingress service (port 8080) via ` just start-all `
45- - builder-playground (L1/L2 blockchain) on ` danyal/base-overlay ` branch
46- - op-rbuilder (block builder)
47- - Kafka
48- - MinIO
49-
50- ## Running Tests
51-
52- ### Start Infrastructure
53-
54- Follow guidelines in ` SETUP.md `
55-
56- ### Run Integration Tests
57-
58- ``` bash
59- cd tips
60- INTEGRATION_TESTS=1 cargo test --package tips-e2e-tests -- --nocapture
61- ```
62-
63- All 5 tests will run:
64- - ` test_rpc_client_instantiation ` - Verifies client creation
65- - ` test_send_valid_transaction ` - End-to-end transaction submission
66- - ` test_send_bundle_with_valid_transaction ` - End-to-end single-transaction bundle
67- - ` test_send_bundle_with_replacement_uuid ` - Bundle replacement with UUID tracking
68- - ` test_send_bundle_with_multiple_transactions ` - Multi-transaction bundle
69-
70- ### Environment Variables
71-
72- | Variable | Purpose | Default | Required |
73- | ----------| ---------| ---------| ----------|
74- | ` INTEGRATION_TESTS ` | Enable integration tests | (unset) | Yes |
75- | ` INGRESS_URL ` | TIPS ingress service URL | ` http://localhost:8080 ` | No |
76- | ` SEQUENCER_URL ` | L2 sequencer node | ` http://localhost:8547 ` | No |
77-
78- ## Test Structure
79-
80- - ` src/client/ ` - RPC client for interacting with TIPS services
81- - ` src/fixtures/ ` - Test data generators (transactions, signers)
82- - ` src/bin/runner/ ` - Load testing runner implementation
83- - ` tests/ ` - End-to-end test scenarios
84-
85- ## Load Testing
86-
87- For load testing and performance metrics, see [ METRICS.md] ( ./METRICS.md ) .
88-
89- The ` load-test ` binary provides:
90- - Multi-wallet concurrent load generation
91- - Time-to-inclusion tracking
92- - Throughput and latency metrics
93- - Reproducible test scenarios
94-
95- Quick start:
96- ``` bash
97- # Build
98- cargo build --release --bin load-test
99-
100- # Setup wallets (optional: add --output wallets.json to save)
101- ./target/release/load-test setup --master-key < KEY> --num-wallets 100 --output wallets.json
102-
103- # Run load test
104- ./target/release/load-test load --wallets wallets.json --rate 100 --duration 5m
105- ```
106-
107- See [ METRICS.md] ( ./METRICS.md ) for complete documentation.
108-
109- ---
110-
111- ## Integration Test Notes
112-
113- - Tests will be skipped if ` INTEGRATION_TESTS ` environment variable is not set
114- - All tests require the full SETUP.md infrastructure to be running
115- - Tests use real nonces fetched from the L2 node, so they adapt to current blockchain state
116- - CI/CD setup will be added later to automate infrastructure provisioning
117-
0 commit comments