TestService
*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.
TestService to usługa używana przez Roblox wewnętrznie do przeprowadzania testów analitycznych na ich silniku.Umożliwia pisanie skomplikowanych testów w samym środku gra.
Makra
Skrypty, które są wykonywane w ramach TestService (za pośrednictwem TestService:Run() ), mają dostęp do specjalnych makro, które bezpośrednio wzywają funkcje pod TestService.Makra są zasadniczo zamiennikami dużych bloków kodu, które nie powinny być zmieniane za każdym razem, gdy chcesz je wywołać.
RBX_CHECK
Ta makro przeprowadza testy za pomocą wezwań do funkcji TestService:Check().
<th>Warunek testowy</th></tr><tr><td>RBX_CHECK(cond)</td><td>cond == prawda</td></tr><tr><td>RBX_CHECK_MESSAGE(cond, failMsg)</td><td>cond == prawda</td></tr><tr><td>RBX_CHECK_THROW(KOD)</td><td>pcall(funkcja() KOD kończyć) == fałsz</td></tr><tr><td>RBX_CHECK_NO_THROW(KOD)</td><td>pcall(funkcja() KOD kończyć) == prawda</td></tr><tr><td>RBX_CHECK_EQUAL(a,b)</td><td>a == b</td></tr><tr><td>RBX_CHECK_NE(a,b)</td><td>a ~= b</td></tr><tr><td>RBX_CHECK_GE(a,b)</td><td>a >= b</td></tr><tr><td>RBX_CHECK_LE(a,b)</td><td>a <= b</td></tr><tr><td>RBX_CHECK_GT(a,b)</td><td>a > b</td></tr><tr><td>RBX_CHECK_LT(a,b)</td><td>a < b</td></tr>
Wielomakro |
RBX_WYMAGANE
Ta makro przeprowadza testy za pomocą wezwań do funkcji TestService:Require().
<th>Warunek testowy</th></tr><tr><td>RBX_REQUIRE(cond)</td><td>cond == prawda</td></tr><tr><td>RBX_REQUIRE_MESSAGE(cond, failMsg)</td><td>cond == prawda</td></tr><tr><td>RBX_REQUIRE_THROW(KOD)</td><td>pcall(funkcja() KOD kończyć) == fałsz</td></tr><tr><td>RBX_REQUIRE_NO_THROW(KOD)</td><td>pcall(funkcja() KOD kończyć) == prawda</td></tr><tr><td>RBX_REQUIRE_EQUAL(a,b)</td><td>a == b</td></tr><tr><td>RBX_REQUIRE_NE(a,b)</td><td>a ~= b</td></tr><tr><td>RBX_REQUIRE_GE(a,b)</td><td>a >= b</td></tr><tr><td>RBX_REQUIRE_LE(a,b)</td><td>a <= b</td></tr><tr><td>RBX_REQUIRE_GT(a,b)</td><td>a > b</td></tr><tr><td>RBX_REQUIRE_LT(a,b)</td><td>a < b</td></tr>
Wielomakro |
RBX_WARN
Ta makro przeprowadza testy za pomocą wezwań do funkcji TestService:Warn().
<th>Warunek testowy</th></tr><tr><td>RBX_WARN(cond)</td><td>cond == prawda</td></tr><tr><td>RBX_WARN_MESSAGE(cond, failMsg)</td><td>cond == prawda</td></tr><tr><td>RBX_WARN_THROW(KOD)</td><td>pcall(funkcja() KOD kończyć) == fałsz</td></tr><tr><td>RBX_WARN_NO_THROW(KOD)</td><td>pcall(funkcja() KOD kończyć) == prawda</td></tr><tr><td>RBX_WARN_EQUAL(a,b)</td><td>a == b</td></tr><tr><td>RBX_WARN_NE(a,b)</td><td>a ~= b</td></tr><tr><td>RBX_WARN_GE(a,b)</td><td>a >= b</td></tr><tr><td>RBX_WARN_LE(a,b)</td><td>a <= b</td></tr><tr><td>RBX_WARN_GT(a,b)</td><td>a > b</td></tr><tr><td>RBX_WARN_LT(a,b)</td><td>a < b</td></tr>
Wielomakro |
Dodatkowe makra
<th>Opis</th></tr><tr><td>RBX_ERROR(msg)</td><td>Bezpośrednio wzywa funkcję <code>Class.TestService:Error()</code>.</td></tr><tr><td>RBX_FAIL(msg)</td><td>Bezpośrednio wzywa funkcję <code>Class.TestService:Fail()</code>.</td></tr><tr><td>RBX_MESSAGE(msg)</td><td>Bezpośrednio wzywa funkcję <code>Class.TestService:Message()</code>.</td></tr>
Wielomakro |
Podsumowanie
Właściwości
Jeśli ustawiono na prawdę, gra zacznie działać, gdy zostanie wywołany metod TestService:Run() TestService.
Opis wykonywanego testu.
Mierzy, ile błędów zostało zarejestrowanych w sesjatestowej.
Gdy ustawiono na prawdę, usługa testowa zostanie wykonana podczas używania akcji Uruchom w Roblox Studio.
Ustawia, czy środowisko fizyczne powinno być ograniczone podczas wykonywania tego testu.
Ustawia, czy obiekty fizyczne będą mogły zasnąć, czy nie, podczas uruchamiania symulacji testowej.
Liczba oczekiwanych graczy w teście, jeśli istnieje.
Ustawia określoną ilość dodatkowej opóźnienia, jaką doświadczają gracze podczas sesjatestowej.
Mierzy, ile wezwań testowych zostało zarejestrowanych w sesji sesja.
Ustawia, czy test powinien być ograniczony, aby symulować czas zgodnie z czasem w świecie rzeczywistym lub tak szybko, jak to możliwe.
Maksymalna ilość czasu, na jaki testy mogą działać.
Mierzy, ile wezwań ostrzegawczych zostało zapisanych w sesjatestowej.
Metody
Drukuje wynik warunku do wyjścia.
Wydrukuje „Punkt kontrolny testowy:”, po którym następuje tekst, do wyjścia, w niebieskim tekście.
Drukuje testowanie do wyjścia, w niebieskim tekście.
Wydrukuje czerwone wiadomości do wyjścia, poprzedzone prefiksem TestService: .
Wskazuje śmiertelny błąd w wykonaniu usługi testowej.Jeśli to zostanie wywołane w ramach skryptu uruchamianego w TestService, spowoduje to przerwanie na linii, która wywołała błąd.
Drukuje wiadomość testową, po której następuje tekst do wyjścia, w niebieskim tekście.
Wydrukuje, czy warunek jest prawdziwy wraz z tekstem opisu.
Drukuje, jeśli warunek jest prawdziwy, w przeciwnym razie drukuje ostrzeżenie.
Wykonuje skrypty, które są powiązane z TestService.
Zdarzenia
- ServerCollectConditionalResult(condition : boolean,text : string,script : Instance,line : number):RBXScriptSignal
Wystrzelony, gdy serwer powinien zebrać wynik testu warunkowego.
Wystrzelony, gdy serwer powinien zebrać wynik testu.
Właściwości
AutoRuns
Jeśli ustawiono na prawdę, gra zacznie działać, gdy zostanie wywołany metod TestService:Run() TestService.
ExecuteWithStudioRun
Gdy ustawiono na prawdę, usługa testowa zostanie wykonana podczas używania akcji Uruchom w Roblox Studio.
Uwaga:
- Jeśli właściwość TestService.NumberOfPlayers jest ustawiona na wartość powyżej 0, uruchomienie gry otworzy okna NumberOfPlayers + 1 studia, z których jedno jest serwerem, a reszta to gracze połączeni z tym serwerem.
- Spróbuj utrzymać tę wartość w rozsądnym zakresie (maksymalnie 8 graczy), w przeciwnym razie CPU komputera będzie przeciążona.
IsPhysicsEnvironmentalThrottled
Ustawia, czy środowisko fizyczne powinno być ograniczone podczas wykonywania tego testu.
IsSleepAllowed
Ustawia, czy obiekty fizyczne będą mogły zasnąć, czy nie, podczas uruchamiania symulacji testowej.
SimulateSecondsLag
Ustawia określoną ilość dodatkowej opóźnienia, jaką doświadczają gracze podczas sesjatestowej.
ThrottlePhysicsToRealtime
Ustawia, czy test powinien być ograniczony, aby symulować czas zgodnie z czasem w świecie rzeczywistym lub tak szybko, jak to możliwe.
Metody
Check
Jeśli warunek jest prawdziwy, drukuje „Sprawdzono z powodzeniem:”, po którym następuje opis do wyjścia, w niebieskim tekście.W przeciwnym razie drukuje „Check failed:”, ponownie, po którym następuje opis, ale w czerwonym tekście.
Parametry
Zwroty
Przykłady kodu
This code would print Check failed: example to the output, in red text.
local TestService = game:GetService("TestService")
TestService:Check(false, "example")
Checkpoint
Wydrukuje " punkt kontrolny testowy: ", po którym następuje tekst , do wyjścia, w niebieskim tekście.
Parametry
Zwroty
Przykłady kodu
Ten kod wydrukowałby punkt kontrolny testowy: przykład do wyjścia, w niebieskim tekście.
local TestService = game:GetService("TestService")
TestService:Checkpoint("example")
Done
Wydrukuje Test zakończony do wyjścia, w niebieskim tekście.
Zwroty
Przykłady kodu
This code would print Testing Done to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Done()
Error
Wydrukuje czerwone wiadomości do wyjścia, poprzedzone prefiksem TestService: .
Parametry
Zwroty
Przykłady kodu
This will print TestService: "This is an error" to the output.
local TestService = game:GetService("TestService")
TestService:Error("this is an error")
Fail
Wskazuje śmiertelny błąd w wykonaniu usługi testowej.Jeśli to zostanie wywołane w ramach skryptu uruchamianego w TestService, spowoduje to przerwanie na linii, która wywołała błąd.
Parametry
Zwroty
Message
Wydrukuje wiadomość testową , następną tekstem do wyjścia, w niebieskim tekście.
Parametry
Zwroty
Przykłady kodu
This code would print Test message: example to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Message("example")
Require
Jeśli condition jest prawdą, drukuje Require passed: , następując description , do wyjścia w niebieskim tekście.W przeciwnym razie drukuje Require failed. Test ended: , następując description , do wyjścia w czerwonym tekście.
Parametry
Zwroty
Przykłady kodu
This code would print Require passed: example to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Require(false, "example")
Warn
Jeśli warunek jest prawdą, drukuje Ostrzeżenie przekazane: > , następujące po nim opis, do wyjścia, w niebieskim tekście.W przeciwnym razie drukuje Ostrzeżenie: , następujące po opisie , do wyjścia, w żółtym tekście.
Parametry
Zwroty
Przykłady kodu
This code would print "Warning: this action is invalid" to the output, in yellow text.
local TestService = game:GetService("TestService")
TestService:Warn(false, "this action is invalid")
Run
Wykonuje skrypty, które są powiązane z TestService.