Automatiseret Solana-handelssoftware bør vurderes med situationer, som har observerbare forventede udfald. En funktionsliste kan sige, at softwaren understøtter risikokontroller, genforsøg eller genopretning uden at vise, hvad funktionerne gør, når dokumentationen er forældet, eller en transaktions status er usikker. Accepttilfælde omsætter disse påstande til spørgsmål, som kan besvares ud fra poster.
Et accepttilfælde begynder med en kendt tilstand, indfører et kontrolleret forhold og angiver den adfærd, som ville tælle som bestået. Det navngiver også den dokumentation, som kræves til at fastslå denne adfærd. En grøn besked på skærmen er utilstrækkelig, hvis testen vedrører kontotilstand eller spørgsmålet om, hvorvidt en dobbelt handling blev skabt.
Tilfældene nedenfor er læringsorienterede og leverandørneutrale. De kan tilpasses et kontrolleret miljø eller en tilstand uden signering, hvor det er passende. De godkender ikke en liveibrugtagning, foreskriver ikke en bestemt strategi og fastslår ikke produktionsudførelsens kvalitet, blot fordi et testmiljø opfører sig korrekt.
Accept af automatiseret Solana-handelssoftware kræver et omfang
Definér den arbejdsgang, som skal accepteres. En signaltjeneste kun til research, et manuelt signeret handelsværktøj og en strategi uden opsyn har forskellige beføjelsesgrænser. Testsættet bør passe til den foreslåede brug frem for at antage, at hvert produkt skal udføre hver rolle.
Angiv det understøttede netværk, aktiverne, programmerne, handlingstyperne og kontomodellen. Identificér, hvilke komponenter der indgår i testen, og hvilke der simuleres. Et bestået resultat gælder dette omfang. Det bør ikke udvides til en påstand om markeder, som ikke understøttes, eller utestede tilladelsesmekanismer.
Vejledningen til Solana-handelsautomatisering beskriver planlægning omkring token-, markeds- og wallettilstand. Accepttilfælde bør afprøve disse tilstandsafhængigheder direkte. Softwaren bør demonstrere, hvad den gør, når én forudsætning ændres, ikke blot gentage en vellykket handling under ideelle forhold.
Skriv dokumentationskravet, før tilfældet køres
Afgør for hvert tilfælde, hvilken post der vil bevise den forventede adfærd. Et afvist forslag kræver en begrundelse og fravær af et deraf følgende ikke-godkendt forsøg. En afsluttet handling kræver sin hensigt, forsøgsidentitet og afstemte kontovirkning. Et genopretningstilfælde kræver tilstanden før og efter afbrydelse.
Bevar softwareversionen, konfigurationen, inputobservationerne og det relevante kontoudgangspunkt. Uden dette kan en senere reviewer være ude af stand til at reproducere resultatet eller afgøre, om en repareret version opfører sig anderledes. Testrapporten bør forblive nyttig, efter at brugerfladen ændres.
Dokumentation for accept af automatisering bør omfatte negative udfald. En korrekt afståelse eller afvisning kan være den tilsigtede beståelsesbetingelse. Hvis hvert afslag behandles som en testfejl, tilskyndes softwaren til at handle, når dens egen dokumentationskontrakt siger, at den bør stoppe, hvilket er det modsatte af det, acceptprocessen skal fastslå.
Tilfælde: Det viste symbol matcher den forkerte mint
Opret to fiktive eller kontrollerede poster med samme læsbare symbol, men forskellige mintidentiteter. Vis et forslag, hvis viste navn ligner det tilladte aktiv, mens minten er uden for det tilladte omfang. Det forventede resultat er en afvisning eller en uafklaret identitetstilstand før signering eller indsendelse.
Dokumentationen bør vise, hvilken identifikator godkendelsen kontrollerede. Hvis softwaren accepterer forslaget, fordi symbolet matcher, afslører testen en grænsefejl. Hvis den afviser forslaget med kun en generel fejl, kan adfærden være sikker, men forklaringen kræver stadig forbedring.
Undersøg også eksporterede poster. Forsøget med den forkerte mint bør ikke senere optræde under det tilladte aktivs historik, blot fordi navnene ligner hinanden. Identitet skal forblive konsekvent på tværs af brugerflade, godkendelse, udførelse og rapportering. En korrekt betegnelse på forsiden er ikke nok, hvis den varige registrering sammenlægger aktiverne.
Tilfælde: Tokenenheder adskiller sig fra den rå mængde
Brug en kontrolleret tokenmængde med en kendt decimalfortolkning. Eksempelvis repræsenterer en rå mængde på 1.250.000 med seks decimaler 1,25 tokens. Forslaget, godkendelsesgrænsen og den viste mængde bør være enige om denne fortolkning.
Det forventede resultat er konsekvent enhedshåndtering fra input til kontopost. En budgetgrænse udtrykt i hele tokens bør ikke sammenlignes direkte med det rå heltal. En kopieret mængde bør ikke ændre betydning, når den flyttes mellem en kursvisning og en transaktionsforhåndsvisning.
Registrér både de rå og de menneskeligt læsbare værdier, hvor testen kræver dem. En enhedsfejl kan skabe en stor utilsigtet handling, mens hvert enkelt felt virker numerisk og gyldigt. Dette tilfælde er værdifuldt, fordi det tester relationen mellem komponenter frem for blot at kontrollere, om én konverteringsfunktion returnerer det forventede tal.
Tilfælde: Krævet dokumentation er forældet
Giv et forslag, hvis understøttende kurs eller markedsobservation er ældre end reglens angivne aktualitetsgrænse. Hold resten af tilfældet gyldigt, så fejlen kan tilskrives alder. Det forventede resultat er en konkret afståelse eller afvisning uden nogen ny indsendelse godkendt ud fra den forældede dokumentation.
Giv derefter en aktuel observation, og verificér, at softwaren vurderer forslaget igen under aktuelle forhold. Den bør ikke blot genoptage en gammel godkendelse uden at kontrollere, om mængden eller beløbet, ruten eller kontotilstanden ændredes. Aktuelle data kan skabe en ny gennemgang, men gør ikke med tilbagevirkende kraft den gamle dokumentation aktuel.
Testregistreringen bør skelne mellem hændelsestid, indlæsningstid og vurderingstid. Hvis aktualitet måles fra beskedens ankomst, mens den underliggende observation er gammel, kan tilfældet bestå på overfladen og stadig bryde den tilsigtede politik. Undersøg det faktiske tidsmål, som bruges i beslutningen.
Tilfælde: To forslag konkurrerer om ét budget
Begynd med et hypotetisk tilgængeligt budget på 100 enheder og to samtidige forslag på tres enheder hver. Under en politik, som ikke tillader låntagning eller overforpligtelse, kan begge ikke få uafhængig fuld godkendelse. Den forventede adfærd er koordineret reservation, afvisning eller rækkefølge under den angivne regel.
Hvis det første forslag reserverer tres enheder, forbliver kun fyrre ikke-reserverede i dette forenklede tilfælde. Det andet forslag bør få et forklaret resultat, som afspejler denne tilstand. Den præcise rækkefølge kan variere, men de samlede forpligtelser skal fortsat stemme med politikken.
Den tidligere vejledning til varig Solana-automatisering forklarer hensigter og reservationer. Dette accepttilfælde verificerer, at implementeringen håndhæver den fælles regnskabsbog ved samtidighed. En sekventiel demonstration af hvert forslag alene ville helt overse konflikten.
Testtilfælde for automatiseret Solana-handelssoftware kræver ukendte udfald
Mange fejl er usikre frem for klart negative. En anmodning kan få timeout efter indsendelse, en kilde kan returnere ufuldstændig status, eller en proces kan stoppe, før et svar gemmes. Test bør repræsentere disse tilstande udtrykkeligt frem for at behandle enhver undtagelse som bevis for, at ingen handling fandt sted.
Den forventede adfærd er et varigt uafklaret forsøg knyttet til den oprindelige hensigt med afhængige handlinger begrænset af afstemningspolitikken. Softwaren bør søge dokumentation om dette forsøg, før den afgør, om en anden økonomisk handling er tilladt.
Testtilfælde for automatiseret Solana-handelssoftware bør derfor behandle ukendte udfald som selvstændige tilfælde. Et system, som håndterer vellykkede og mislykkede transaktioner korrekt, kan stadig skabe dobbelt eksponering, hvis det håndterer perioden mellem dem forkert. Acceptregistreringen skal undersøge dette interval, ikke kun den endelige slutstatus.
Tilfælde: Indsendelsen accepteres, men er endnu ikke bekræftet
Simulér eller observer et indsendelsessvar, som giver en forsøgsidentitet, mens bekræftelse fortsat afventes. Brugerfladen bør vise en indsendt-tilstand eller tilsvarende, bevare den relevante ressourcereservation og fortsætte med at kontrollere udfaldet under sin politik.
Solana dokumenterer, at et vellykket sendTransaction-svar ikke i sig selv garanterer behandling eller bekræftelse. Accepttesten bør verificere, at softwaren ikke betegner kontoresultatet som afsluttet alene, fordi RPC-kaldet returnerede med succes. Solanas indsendelsesdokumentation.
Dokumentation for at bestå omfatter tilstandsovergangshistorikken og fravær af for tidlig afstemning. En succesanimation kan være acceptabel som kvittering for indsendelse, hvis ordlyden er tydelig, men bør ikke antyde, at den ønskede tokensaldo allerede er fastslået.
Tilfælde: Et genforsøg følger en ukendt indsendelse
Afbryd svarforløbet, efter at et forsøg kan være indsendt. Udløs den dokumenterede genforsøgs- eller genopretningsprocedure. Det forventede resultat er fortsat håndtering af samme hensigt med tilstrækkelig forsøgsidentitet til at undgå at skabe en ny ordre, blot fordi det første svar manglede.
Undersøg de varige poster for dobbelte hensigter og ressourcereservationer. Flere netværksforsøg kan være en del af en dokumenteret indsendelsespolitik, men bør ikke blive økonomiske handlinger uden forbindelse til hinanden. Testen bør identificere den præcise relation mellem forsøgene og den oprindelige godkendte anmodning.
Den tidligere vejledning til Solana-API-genopretning behandler afgrænsede genforsøg og genopretning. Dette tilfælde tester, om disse driftsmekanismer bevarer betydning. Et genforsøg, som til sidst giver en saldoændring, er ikke automatisk korrekt, hvis kontoen også indeholder en utilsigtet dobbelt handling.
Tilfælde: En delvis exit efterlader en reel position
Begynd med en kontrolleret position på 1.000 tokens og et foreslået salg af 400. Efter et understøttet udfald bør softwaren bevare en position på 600 tokens under dette forenklede mængdeeksempel med omkostninger og provenu registreret særskilt. Den bør ikke markere hele positionen som lukket, fordi en exithandling blev afsluttet.
Undersøg derefter efterfølgende exitregler. De bør bruge den resterende mængde og den aktuelle kontodokumentation. En anden udløser bør ikke forsøge at sælge de oprindelige 1.000 tokens eller antage, at det første salg fjernede al eksponering. Positionslivscyklussen skal overleve ud over ét handelskort.
Vejledningen til en Solana-autotrader dækker delvise exits og gebyrer, mens den tidligere vejledning til Solana-take-profit og stop-loss forklarer koordinering mellem exitbetingelser. Dette tilfælde kontrollerer den fælles positionspost, som begge typer kontroller afhænger af.
Tilfælde: Et gebyr ændrer kontoen uden en vellykket handel
Brug et understøttet fejlscenarie, hvor kontoen pådrager sig et transaktionsgebyr, men den tilsigtede veksling ikke afsluttes. Softwaren bør registrere det mislykkede forsøg og den gældende omkostning frem for at behandle hændelsen, som om den slet ikke havde nogen kontovirkning.
Solanas dokumenterede transaktionsmodel bemærker, at mislykket udførelse stadig kan medføre gebyrer. Accepttilfældet bør fokusere på, om softwarens regnskab afspejler den faktisk observerede virkning i det kontrollerede miljø. Det bør ikke antage et fast universelt gebyrbeløb. Solanas transaktionsdokumentation.
Beståelsesdokumentationen omfatter forsøgsstatus, kontoændring og omkostningsklassifikation. En rapport, som kun indeholder vellykkede handler, ville ikke kunne forklare dette resultat, selv hvis dens synlige positionsmængde fortsat var korrekt. Fuldstændigt regnskab omfatter driftsforsøg, som ikke opnåede den tilsigtede veksling.
Tilfælde: En tokenfunktion, som ikke understøttes, vises
Vis en token- eller kontokonfiguration uden for softwarens dokumenterede fortolkningsunderstøttelse. Det forventede resultat er en tydelig ikke-understøttet eller uafklaret tilstand uden automatisk indsættelse af gunstige standardværdier. Vellykket hentning af kontodata fastslår ikke, at softwaren forstår enhver relevant funktion.
Testen bør identificere, hvilken grænse der stoppede arbejdsgangen. Det kan være fortolkeren, kvalifikationsreglen, kursforløbet eller godkendelseskontrollen. En navngiven begrænsning hjælper brugere med at skelne manglende understøttelse fra en midlertidig netværksfejl og forhindrer meningsløse gentagne genforsøg.
Kræv ikke, at softwaren understøtter ethvert muligt tilfælde for at bestå en afgrænset vurdering. Kræv, at den håndterer sin angivne grænse ærligt. Tilfælde, som ikke understøttes, bliver farlige, når brugerfladen forklæder dem som almindelige understøttede aktiver eller udelader begrænsningen fra et forslags dokumentationspost.
Tilfælde: Beføjelser trækkes tilbage under arbejdsgangen
Forbered et forslag, og træk derefter de relevante signerings- eller delegerede beføjelser tilbage gennem den mekanisme, den kontrollerede test bruger. Det næste trin bør fejle sikkert og forklare, at beføjelsen er utilgængelig. En tidligere intern godkendelse bør ikke behandles som erstatning for aktuel ekstern tilladelse.
Softwaren bør bevare forslaget og det mislykkede godkendelsesforløb uden gentagne gange at kræve bredere adgang. Hvis en ny tilladelse kræves, bør det være en separat udtrykkelig gennemgang. Testen bør også verificere, at afstemning med kun læseadgang fortsat er tilgængelig, hvor designet understøtter det.
Den præcise tilbagekaldelsesprocedure afhænger af beføjelsesmodellen. Acceptrapporten bør navngive den mekanisme, som faktisk blev testet, og undgå at generalisere resultatet til alle wallet- eller delegeringsdesign. Et bestået resultat demonstrerer korrekt håndtering af den definerede grænse, ikke universel opbevaringssikkerhed.
Tilfælde: Processen genstarter med åbent arbejde
Opret en varig tilstand med én afsluttet hensigt, ét godkendt, men ikke indsendt forslag og ét uafklaret indsendt forsøg. Genstart softwaren. Hvert punkt bør vende tilbage med sin korrekte identitet og status frem for at blive udfladet til en generel venteliste.
Det ikke-indsendte forslag kan kræve udløb eller ny vurdering. Det indsendte forsøg kræver afstemning. Den afsluttede hensigt bør ikke køre igen. Disse forskellige udfald gør tilfældet mere informativt end at genstarte et tomt program og kontrollere, at hjemmeskærmen vises.
Undersøg ressourcereservationer efter genstart. De bør svare til den gendannede tilstand uden uforklaret frigivelse eller fordobling. En korrekt genstart bevarer de økonomiske relationer mellem poster såvel som selve posterne.
Tilfælde: En regelversion ændres midt i en episode
Åbn et kontrolleret signal eller forslag under version A, og aktivér derefter version B med en ændret kvalifikations- eller størrelsesregel. Softwaren bør anvende sin dokumenterede overgangspolitik: fortsætte den gamle episode under A, lukke den eller migrere den med en udtrykkelig registrering.
Det forventede resultat er ikke ét universelt overgangsvalg. Det er overensstemmelse med den angivne politik og bevarelse af den oprindelige version. En reviewer bør kunne forklare, hvorfor lignende observationer før og efter aktivering gav forskellige beslutninger.
Vejledningen til en Solana-handelsalgoritme følger én algoritme gennem observationer, regler og gennemgang. Accepttest kontrollerer, at denne kæde forbliver intakt, når implementeringen ændres. Lydløs nyfortolkning af gamle beslutninger under den aktuelle version gør senere research og hændelsesgennemgang upålidelig.
Tilfælde: Eksport rekonstruerer en mislykket arbejdsgang
Eksportér et tilfælde med en afståelse, et afvist forslag, et ukendt forsøg, som senere blev afklaret, og en delvis position. Bed en reviewer rekonstruere rækkefølgen uden adgang til livebrugerfladen. Eksporten bør bevare de identiteter, tidspunkter, enheder, versioner, omkostninger og korrektionsrelationer, som opgaven kræver.
En liste over vellykkede transaktioner består ikke denne bredere test. Den udelader de beslutninger og usikkerheder, som forklarer arbejdsgangen. Rapporten bør angive, hvilke poster der mangler, frem for at antage, at en fil, som kan downloades, er fuldstændig, fordi den åbner med succes.
Undersøg også eksporten for hemmeligt materiale. Driftsreferencer bør identificere beføjelsesforløbet uden at afsløre private legitimationsoplysninger. En nyttig acceptregistrering kan deles til gennemgang og samtidig holde muligheden for at kontrollere aktiver adskilt fra muligheden for at forstå, hvad der skete.
Bedøm fejl efter deres konsekvens og årsag
Når et tilfælde fejler, identificeres det, om problemet vedrører korrekthed, beføjelser, regnskab, genoprettelighed eller forklaring. Disse kategorier hjælper med at prioritere reparationen. En vildledende statusbetegnelse og en utilsigtet dobbelt handling er begge fejl, men har forskellige konsekvenser og kræver forskellig validering bagefter.
Bevar den fejlende dokumentation og den reparerede version. Kør det berørte tilfælde og tæt beslægtede tilfælde, som afprøver den ændrede grænse, igen. Undgå at behandle en reparation som afsluttet, blot fordi den oprindelige fejlmeddelelse forsvinder; den underliggende konto- og tilstandsadfærd skal opfylde det forventede resultat.
Test bør forblive meningsfulde, mens softwaren udvikler sig. Fjern kun tilfælde, når deres omfang ikke længere understøttes, og produktdefinitionen ændres tilsvarende. Et krympende testsæt bør ikke lydløst forbedre den tilsyneladende beståelsesandel ved at udelukke vanskelig adfærd, som arbejdsgangen stadig afhænger af.
Bevar tilfælde, som består ved ikke at gøre noget
Nogle af de vigtigste tilfælde slutter uden en transaktion: forældet dokumentation giver afståelse, utilstrækkeligt budget giver afvisning, og tilbagetrukne beføjelser forhindrer signering. Bevar disse tilfælde i acceptrapporten frem for at behandle dem som indledende opsætning til det vellykkede forløb.
Deres dokumentation bør vise, hvorfor ingen handling fandt sted, og om nogen ressourcer eller tilladelser fejlagtigt forblev aktive bagefter. Et korrekt afslag kan stadig efterlade en ikke-frigivet reservation eller en vildledende åben status. Undersøgelse af hele udfaldet uden handling bekræfter, at softwaren både respekterede grænsen og bragte arbejdsgangen tilbage til en forståelig tilstand.
Acceptér en defineret arbejdsgang, ikke et løfte
Den endelige acceptrapport bør identificere den testede version, miljøet, beføjelsesmodellen, det understøttede omfang, resultaterne af tilfældene og de utestede begrænsninger. Den bør skelne observeret dokumentation fra påstande, som kun findes i dokumentationen, og simuleret adfærd fra produktionsadfærd.
Accept af automatiseret Solana-handelssoftware er stærkest, når den demonstrerer både handling og tilbageholdenhed. Softwaren bør handle, når de definerede krav er opfyldt, afvise eller afstå, når de ikke er, og bevare usikkerhed, indtil kontoresultatet kan fastslås. Denne adfærd er mere informativ end en bred påstand om automatiseringsmuligheder.
En samling konkrete tilfælde giver en læser et grundlag for ibrugtagning eller yderligere arbejde, som kan gennemgås. Den fjerner ikke markedsrisiko og beviser ikke en strategis værdi. Den fastslår, om softwaren håndterer den angivne arbejdsgang på en måde, som kan forklares, genoprettes og kontrolleres mod de beføjelser, den faktisk fik.