TestService
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
Le service de test est un service utilisé par Roblox internement pour exécuter des tests analytiques sur son moteur.Cela permet d'écrire des tests sophistiqués directement dans un jeu.
Macros
Les scripts qui sont exécutés à l'intérieur du TestService (via TestService:Run() ) ont accès à des macros spéciales qui invoquent directement des fonctions sous le TestService.Les macros sont essentiellement des substitutions pour de grands blocs de code qui ne devraient pas avoir besoin d'être réécrits chaque fois que vous voulez les appeler.
RBX_CHECK
Cette macro effectue des tests avec des appels à la fonction TestService:Check().
<th>Condition de test</th>
</tr>
<tr>
<td>RBX_CHECK(cond)</td>
<td>cond == vrai</td>
</tr>
<tr>
<td>RBX_CHECK_MESSAGE(cond, failMsg)</td>
<td>cond == vrai</td>
</tr>
<tr>
<td>RBX_CHECK_THROW(CODE)</td>
<td>pcall(function() CODE terminer) == faux</td>
</tr>
<tr>
<td>RBX_CHECK_NO_THROW(CODE)</td>
<td>pcall(fonction() CODE terminer) == vrai</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>
Macro |
RBX_REQUIRE
Cette macro effectue des tests avec des appels à la fonction TestService:Require().
<th>Condition de test</th>
</tr>
<tr>
<td>RBX_REQUIRE(cond)</td>
<td>cond == vrai</td>
</tr>
<tr>
<td>RBX_REQUIRE_MESSAGE(cond, failMsg)</td>
<td>cond == vrai</td>
</tr>
<tr>
<td>RBX_REQUIRE_THROW(CODE)</td>
<td>pcall(function() CODE terminer) == faux</td>
</tr>
<tr>
<td>RBX_REQUIRE_NO_THROW(CODE)</td>
<td>pcall(fonction() CODE terminer) == vrai</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>
Macro |
RBX_WARN
Cette macro effectue des tests avec des appels à la fonction TestService:Warn().
<th>Condition de test</th>
</tr>
<tr>
<td>RBX_WARN(cond)</td>
<td>cond == vrai</td>
</tr>
<tr>
<td>RBX_WARN_MESSAGE(cond, failMsg)</td>
<td>cond == vrai</td>
</tr>
<tr>
<td>RBX_WARN_THROW(CODE)</td>
<td>pcall(function() CODE terminer) == faux</td>
</tr>
<tr>
<td>RBX_WARN_NO_THROW(CODE)</td>
<td>pcall(fonction() CODE terminer) == vrai</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>
Macro |
Macros supplémentaires
<th>Avertissement</th></tr><tr><td>RBX_ERREUR(msg)</td><td>Appelle directement la fonction <code>Class.TestService:Error()</code>.</td></tr><tr><td>RBX_FAIL(msg)</td><td>Appelle directement la fonction <code>Class.TestService:Fail()</code>.</td></tr><tr><td>RBX_MESSAGE(msg)</td><td>Appelle directement la fonction <code>Class.TestService:Message()</code>.</td></tr>
Macro |
Résumé
Propriétés
Si la valeur est définie sur vrai, le jeu commencera à s'exécuter lorsque la méthode TestService:Run() du TestService sera appelée.
Une description du test qui est exécuté.
Détermine le nombre d'erreurs enregistrées dans la session de test.
Lorsqu'il est défini sur true, le service de test sera exécuté lors de l'utilisation de l'action exécuter dans Roblox Studio.
Définit si l'environnement physique doit être limité ou non lors de l'exécution de ce test.
Définit si les objets physiques peuvent ou non s'endormir pendant la simulation de test.
Le nombre de joueurs attendus dans ce test, si nécessaire.
Définit un montant spécifique de latence supplémentaire que les joueurs ressentent pendant la session de test.
Détermine le nombre de demandes de test enregistrées dans la session de test.
Quantité maximum de temps pendant lequel les tests sont autorisés à s'exécuter.
Détermine le nombre d'appels d'avertissement enregistrés dans la session de test.
Méthodes
Imprime le résultat de la condition à l'sortie.
Imprime "Point de contrôle de test : ", suivi de texte, à la sortie, en texte bleu.
Impressions de tests terminées à l'sortie, en texte bleu.
Imprime un message rouge à la sortie, préfixé par TestService: .
Indique une erreur fatale dans l'exécution d'un lancerde test.Si cela est appelé à l'intérieur d'un script s'exécutant à l'intérieur du TestService, cela déclenchera un point d'arrêt sur la ligne qui a invoqué l'erreur.
Imprime le message de test, suivi par du texte à l'sortie, en texte bleu.
Imprime si une condition est vraie avec le texte de description.
Imprime si une condition est vraie, sinon imprime un avertissement.
Exécute des scripts qui sont parentés à TestService.
Évènements
- ServerCollectConditionalResult(condition : boolean,text : string,script : Instance,line : number):RBXScriptSignal
Tiré lorsque le serveur doit collecter un resultatsde test conditionnel.
Tiré lorsque le serveur doit collecter un resultatsde test.
Propriétés
AutoRuns
Si la valeur est définie sur vrai, le jeu commencera à s'exécuter lorsque la méthode TestService:Run() du TestService sera appelée.
ExecuteWithStudioRun
Lorsqu'il est défini sur true, le service de test sera exécuté lors de l'utilisation de l'action exécuter dans Roblox Studio.
Remarque :
- Si la propriété TestService.NumberOfPlayers est définie sur une valeur supérieure à 0, l'exécution du jeu ouvrira les fenêtres NumberOfPlayers + 1 du studio, où une fenêtre est un serveur, et le reste sont des joueurs connectés à ce serveur.
- Essayez de garder cette valeur dans une plage rationnelle (1 à 8 joueurs au maximum), sinon le processeur de votre ordinateur sera surchargé.
IsPhysicsEnvironmentalThrottled
Définit si l'environnement physique doit être limité ou non lors de l'exécution de ce test.
IsSleepAllowed
Définit si les objets physiques peuvent ou non s'endormir pendant la simulation de test.
SimulateSecondsLag
Définit un montant spécifique de latence supplémentaire que les joueurs ressentent pendant la session de test.
ThrottlePhysicsToRealtime
Méthodes
Check
Si la condition est vraie, imprime « Check passed : », suivi par la description de la sortie, en texte bleu.Sinon, imprime "Échec de la vérification : ", à nouveau, suivi de la description, mais en texte rouge.
Paramètres
Retours
Échantillons de code
This code would print Check failed: example to the output, in red text.
local TestService = game:GetService("TestService")
TestService:Check(false, "example")
Checkpoint
Imprime « Point de contrôle de test : », suivi de texte , à la sortie, en texte bleu.
Paramètres
Retours
Échantillons de code
This code would print Test checkpoint: example to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Checkpoint("example")
Done
Imprime Test terminé à la sortie, en texte bleu.
Retours
Échantillons de code
This code would print Testing Done to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Done()
Error
Imprime un message rouge à la sortie, préfixé par TestService: .
Paramètres
Retours
Échantillons de code
This will print TestService: "This is an error" to the output.
local TestService = game:GetService("TestService")
TestService:Error("this is an error")
Fail
Indique une erreur fatale dans l'exécution d'un lancerde test.Si cela est appelé à l'intérieur d'un script s'exécutant à l'intérieur du TestService, cela déclenchera un point d'arrêt sur la ligne qui a invoqué l'erreur.
Paramètres
Retours
Message
Imprime le message de test , suivi de texte à la sortie, en texte bleu.
Paramètres
Retours
Échantillons de code
This code would print Test message: example to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Message("example")
Require
Si condition est vrai, imprime Require passed: , suivi de description , à la sortie en texte bleu.Sinon, imprime Require failed. Test ended: , suivi de description , à la sortie en texte rouge.
Paramètres
Retours
Échantillons de code
This code would print Require passed: example to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Require(false, "example")
Warn
Si la condition est vraie, imprime Avertissement passé : , suivi de description , à l'entrée, en texte bleu.Sinon, imprime Avertissement : , suivi de description , à la sortie, en texte jaune.
Paramètres
Retours
Échantillons de code
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
Exécute des scripts qui sont parentés à TestService.