Ξεκινώντας

Οδηγός Γρήγορης Εκκίνησης

Αυτός ο οδηγός καλύπτει τα βασικά: πώς να δημιουργήσετε έναν λογαριασμό, να χρηματοδοτήσετε έναν λογαριασμό και να στείλετε μια συναλλαγή.

Εγκατάσταση Εξαρτήσεων

Προσθέστε το LiteSVM στις εξαρτήσεις ανάπτυξής σας:

cargo add --dev litesvm

Αρκετά crate του Solana βελτιώνουν την εμπειρία δοκιμών παρέχοντας βασικούς τύπους και βοηθητικά εργαλεία. Μπορείτε να χρησιμοποιήσετε το crate ευκολίας solana-sdk ή τα επιμέρους crate συνιστωσών:

cargo add --dev solana-sdk

Δημιουργία Αρχείου Δοκιμών

Μέσα στον χώρο εργασίας σας, δημιουργήστε έναν φάκελο για tests.

mkdir tests

Δημιουργία και Χρηματοδότηση Λογαριασμού

Ας γράψουμε το πρώτο σας τεστ LiteSVM.

Μέσα στον φάκελο tests, δημιουργήστε ένα νέο αρχείο και αντιγράψτε αυτόν τον κώδικα:

tests/create_account.rs
use litesvm::LiteSVM;
use solana_sdk::signature::{Keypair, Signer};
#[test]
fn create_account() {
// Create the test environment
let mut svm = LiteSVM::new();
// Create a test account
let user = Keypair::new();
// Fund the account with SOL
svm.airdrop(&user.pubkey(), 1_000_000_000).unwrap();
// Check the balance
let balance = svm.get_balance(&user.pubkey()).unwrap();
assert_eq!(balance, 1_000_000_000);
println!("Account funded with {} SOL", balance as f64 / 1e9);
}

Εκτελέστε το Τεστ σας

cargo test create_account -- --show-output

Θα πρέπει να δείτε:

running 1 test
test create_account ... ok
successes:
---- create_account stdout ----
Account funded with 1 SOL
successes:
create_account

Τέλος! Μόλις δημιουργήσατε το πρώτο σας τεστ litesvm, που καλύπτει τη δημιουργία ενός λογαριασμού και τη χρηματοδότησή του.

Εκτέλεση Συναλλαγής

Τώρα ας δημιουργήσουμε μια συναλλαγή μεταφοράς.

Δημιουργήστε ένα νέο αρχείο δοκιμών και αντιγράψτε αυτόν τον κώδικα:

tests/transfer_test.rs
use litesvm::LiteSVM;
use solana_sdk::{
signature::{Keypair, Signer},
system_instruction,
transaction::Transaction,
};
#[test]
fn test_transfer() {
let mut svm = LiteSVM::new();
// Create two accounts
let alice = Keypair::new();
let bob = Keypair::new();
// Fund Alice
svm.airdrop(&alice.pubkey(), 2_000_000_000).unwrap();
// Create transfer instruction
let transfer = system_instruction::transfer(
&alice.pubkey(),
&bob.pubkey(),
1_000_000_000, // 1 SOL
);
// Build and sign transaction
let tx = Transaction::new_signed_with_payer(
&[transfer],
Some(&alice.pubkey()),
&[&alice],
svm.latest_blockhash(),
);
// Send it (execution happens immediately)
svm.send_transaction(tx).unwrap();
// Check new balances
assert_eq!(svm.get_balance(&bob.pubkey()).unwrap(), 1_000_000_000);
assert!(svm.get_balance(&alice.pubkey()).unwrap() < 1_000_000_000);
println!("Transfer successful!");
}

Το τεστ ολοκληρώθηκε! Αυτό το τεστ καλύπτει την εκτέλεση της εντολής μεταφοράς από το System Program.

Εκτέλεση Όλων των Δοκιμών

cargo test -- --show-output

Θα πρέπει να δείτε:

running 1 test
test create_account ... ok
successes:
---- create_account stdout ----
Account funded with 1 SOL
successes:
create_account
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
Running tests/test_transfer.rs (target/debug/deps/test_transfer-f174954e7483f36b)
running 1 test
test test_transfer ... ok
successes:
---- test_transfer stdout ----
Transfer successful!
successes:
test_transfer
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s

Αυτό ήταν! Τώρα έχετε δημιουργήσει επιτυχώς litesvm δοκιμές που δημιουργούν και χρηματοδοτούν λογαριασμούς και εκτελούν συναλλαγές.

Επόμενα Βήματα

Γιατί το LiteSVM → Μάθετε γιατί θα θέλατε να χρησιμοποιήσετε το LiteSVM για δοκιμές

Δοκιμή του Προγράμματός σας → Μάθετε πώς να δοκιμάσετε το δικό σας πρόγραμμα Solana
Παραδείγματα → Δείτε έτοιμες λύσεις για συνηθισμένα σενάρια και παραδείγματα πλήρους αποθετηρίου
Αναφορά API → Μάθετε προηγμένες λειτουργίες και προσαρμοσμένες ρυθμίσεις

Is this page helpful?

© 2026 Ίδρυμα Solana. Με επιφύλαξη παντός δικαιώματος.