TestService
*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.
El servicio de prueba es un servicio utilizado por Roblox internamente para realizar pruebas analíticas en su motor.Hace posible escribir pruebas sofisticadas dentro de un juego.
Macros
Los scripts que se ejecutan dentro del TestService (a través de TestService:Run()) tienen acceso a macros especiales que invocan directamente funciones bajo el TestService.Las macros son esencialmente sustituciones para grandes bloques de código que no deberían necesitar ser reescritos cada vez que quieras llamarlos.
RBX_CHECK
Esta macro realiza pruebas con llamadas a la función TestService:Check() .
<th>Condición de prueba</th>
</tr>
<tr>
<td>RBX_CHECK(cond)</td>
<td>cond == verdadero</td>
</tr>
<tr>
<td>RBX_CHECK_MESSAGE(cond, fallMsg)</td>
<td>cond == verdadero</td>
</tr>
<tr>
<td>RBX_CHECK_THROW(CÓDIGO)</td>
<td>pcall(función() CÓDIGO finalizar) == false</td>
</tr>
<tr>
<td>RBX_CHECK_NO_THROW(CÓDIGO)</td>
<td>pcall(function() CÓDIGO finalizar) == verdadero</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>
Maquina virtual |
RBX_REQUIRE
Esta macro realiza pruebas con llamadas a la función TestService:Require() .
<th>Condición de prueba</th>
</tr>
<tr>
<td>RBX_REQUIRE(cond)</td>
<td>cond == verdadero</td>
</tr>
<tr>
<td>RBX_REQUIRE_MESSAGE(cond, fallMsg)</td>
<td>cond == verdadero</td>
</tr>
<tr>
<td>RBX_REQUIRE_THROW(CÓDIGO)</td>
<td>pcall(función() CÓDIGO finalizar) == false</td>
</tr>
<tr>
<td>RBX_REQUIRE_NO_THROW(CÓDIGO)</td>
<td>pcall(function() CÓDIGO finalizar) == verdadero</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>
Maquina virtual |
RBX_WARN
Esta macro realiza pruebas con llamadas a la función TestService:Warn() .
<th>Condición de prueba</th>
</tr>
<tr>
<td>RBX_WARN(cond)</td>
<td>cond == verdadero</td>
</tr>
<tr>
<td>RBX_WARN_MESSAGE(cond, fallMsg)</td>
<td>cond == verdadero</td>
</tr>
<tr>
<td>RBX_WARN_THROW(CÓDIGO)</td>
<td>pcall(función() CÓDIGO finalizar) == false</td>
</tr>
<tr>
<td>RBX_WARN_NO_THROW(CÓDIGO)</td>
<td>pcall(function() CÓDIGO finalizar) == verdadero</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>
Maquina virtual |
Macros adicionales
<th>Descripción</th></tr><tr><td>RBX_ERROR(msg)</td><td>Llama directamente la función <code>Class.TestService:Error()</code>.</td></tr><tr><td>RBX_FAILURE(msg)</td><td>Llama directamente la función <code>Class.TestService:Fail()</code>.</td></tr><tr><td>RBX_MESSAGE(msg)</td><td>Llama directamente la función <code>Class.TestService:Message()</code>.</td></tr>
Maquina virtual |
Resumen
Propiedades
Si se establece en verdadero, el juego comenzará a funcionar cuando se llame el método TestService:Run() del servicio de prueba.
Una descripción de la prueba que se está ejecutando.
Mide cuántos errores se han registrado en la sesión de prueba.
Cuando se establece en verdadero, el servicio de prueba se ejecutará al usar la acción Ejecutar en Roblox Studio.
Establece si el entorno de física debe ser acelerado o no mientras se realiza esta prueba.
Establece si los objetos físicos se permiten o no dormir mientras se ejecuta la simulación de prueba.
El número de jugadores esperados en esta prueba, si hay alguno.
Establece una cantidad específica de latencia adicional experimentada por los jugadores durante la sesión de prueba.
Mide cuántas llamadas de prueba se han grabado en la sesión de prueba.
La cantidad máxima de tiempo que se permite que las pruebas se ejecuten durante.
Mide cuántas llamadas de advertencia se han registrado en la sesión de prueba.
Métodos
Imprime el resultado de la condición a la Salida.
Imprime "Punto de control de prueba: ", seguido de texto, en la Salida, en texto azul.
Imprime las pruebas terminadas al Salida, en texto azul.
Imprime un mensaje rojo al Salida, precedido por TestService: .
Indica un error fatal en una ejecutarde TestService.Si esto se llama dentro de un script que se ejecuta dentro del TestService, esto iniciará un punto de interrupción en la línea que invocó el error.
Imprime el mensaje de prueba, seguido de texto al Salida, en texto azul.
Imprime si una condición es verdadera junto con el texto de descripción.
Imprime si una condición es verdadera, de lo contrario imprime una advertencia.
Ejecuta scripts que están asociados con TestService.
Eventos
- ServerCollectConditionalResult(condition : boolean,text : string,script : Instance,line : number):RBXScriptSignal
Despedido cuando el servidor debe recopilar un resultado de prueba condicional.
Despedido cuando el servidor debería recopilar un resultado de prueba.
Propiedades
AutoRuns
Si se establece en verdadero, el juego comenzará a funcionar cuando se llame el método TestService:Run() del servicio de prueba.
ExecuteWithStudioRun
Cuando se establece en verdadero, el servicio de prueba se ejecutará al usar la acción Ejecutar en Roblox Studio.
Nota:
- Si la propiedad TestService.NumberOfPlayers se establece en un valor superior a 0, ejecutar el juego abrirá las ventanas de estudio NumberOfPlayers + 1, donde una ventana es un servidor y el resto son jugadores conectados a ese servidor.
- Trate de mantener este valor dentro de un rango racional (1 a 8 jugadores como máximo), o de lo contrario la CPU de su computadora se sobrecargará.
IsPhysicsEnvironmentalThrottled
Establece si el entorno de física debe ser acelerado o no mientras se realiza esta prueba.
IsSleepAllowed
Establece si los objetos físicos se permiten o no dormir mientras se ejecuta la simulación de prueba.
SimulateSecondsLag
Establece una cantidad específica de latencia adicional experimentada por los jugadores durante la sesión de prueba.
ThrottlePhysicsToRealtime
Métodos
Check
Si la condición es verdadera, imprime "Check passed: ", seguido de una descripción para la Salida, en texto azul.De lo contrario, imprime "Check failed: ", nuevamente, seguido de la descripción, pero en texto rojo.
Parámetros
Devuelve
Muestras de código
This code would print Check failed: example to the output, in red text.
local TestService = game:GetService("TestService")
TestService:Check(false, "example")
Checkpoint
Imprime " Punto de control de prueba: ", seguido de texto , al Salida, en texto azul.
Parámetros
Devuelve
Muestras de código
This code would print Test checkpoint: example to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Checkpoint("example")
Done
Imprime Pruebas completadas en la Salida, en texto azul.
Devuelve
Muestras de código
This code would print Testing Done to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Done()
Error
Imprime un mensaje rojo al Salida, precedido por TestService: .
Parámetros
Devuelve
Muestras de código
This will print TestService: "This is an error" to the output.
local TestService = game:GetService("TestService")
TestService:Error("this is an error")
Fail
Indica un error fatal en una ejecutarde TestService.Si esto se llama dentro de un script que se ejecuta dentro del TestService, esto iniciará un punto de interrupción en la línea que invocó el error.
Parámetros
Devuelve
Message
Imprime mensaje de prueba , seguido de texto al Salida, en texto azul.
Parámetros
Devuelve
Muestras de código
This code would print Test message: example to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Message("example")
Require
Si condition es verdad, imprime Require passed: , seguido de description , en el resultado en texto azul.De lo contrario, imprime Require failed. Test ended: , seguido de description , al resultado en texto rojo.
Parámetros
Devuelve
Muestras de código
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 condición es verdadera, imprime advertencia pasada: , seguida de descripción , al Salida, en texto azul.De lo contrario, imprime Atención/advertencia: , seguida de descripción , al Salida, en texto amarillo.
Parámetros
Devuelve
Muestras de código
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
Ejecuta scripts que están asociados con TestService.
Devuelve
Eventos
ServerCollectConditionalResult
Despedido cuando el servidor debe recopilar un resultado de prueba condicional.