TestService
*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.
O TestService é um serviço usado pelo Roblox internamente para executar testes analíticos em seu motor.Torna possível escrever testes sofisticados dentro de um jogo.
Marcos
Scripts que são executados dentro do TestService (via TestService:Run() ) têm acesso a macros especiais que invocam diretamente funções sob o TestService.Macros são essencialmente substituições para grandes blocos de código que não devem precisar ser reescritos cada vez que você quiser chamá-los.
RBX_CHECK
Esta macro faz testes com chamadas para a função TestService:Check() .
<th>Condição de Teste</th>
</tr>
<tr>
<td>RBX_CHECK(cond)</td>
<td>cond == verdadeiro</td>
</tr>
<tr>
<td>RBX_CHECK_MESSAGE(cond, falharMsg)</td>
<td>cond == verdadeiro</td>
</tr>
<tr>
<td>RBX_CHECK_THROW(CÓDIGO)</td>
<td>pcall(function() CÓDIGO terminar/parar/sair) == falso</td>
</tr>
<tr>
<td>RBX_CHECK_NO_THROW(CÓDIGO)</td>
<td>pcall(function() CÓDIGO terminar/parar/sair) == verdadeiro</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>
Microscópio |
RBX_REQUIRE
Esta macro faz testes com chamadas para a função TestService:Require() .
<th>Condição de Teste</th>
</tr>
<tr>
<td>RBX_REQUIRE(cond)</td>
<td>cond == verdadeiro</td>
</tr>
<tr>
<td>RBX_REQUIRE_MESSAGE(cond, falharMsg)</td>
<td>cond == verdadeiro</td>
</tr>
<tr>
<td>RBX_REQUIRE_THROW(CÓDIGO)</td>
<td>pcall(function() CÓDIGO terminar/parar/sair) == falso</td>
</tr>
<tr>
<td>RBX_REQUIRE_NO_THROW(CÓDIGO)</td>
<td>pcall(function() CÓDIGO terminar/parar/sair) == verdadeiro</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>
Microscópio |
RBX_WARN
Esta macro faz testes com chamadas para a função TestService:Warn() .
<th>Condição de Teste</th>
</tr>
<tr>
<td>RBX_WARN(cond)</td>
<td>cond == verdadeiro</td>
</tr>
<tr>
<td>RBX_WARN_MESSAGE(cond, falhaMsg)</td>
<td>cond == verdadeiro</td>
</tr>
<tr>
<td>RBX_WARN_THROW(CÓDIGO)</td>
<td>pcall(function() CÓDIGO terminar/parar/sair) == falso</td>
</tr>
<tr>
<td>RBX_WARN_NO_THROW(CÓDIGO)</td>
<td>pcall(function() CÓDIGO terminar/parar/sair) == verdadeiro</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>
Microscópio |
Macros Adicionais
<th>Descrição</th></tr><tr><td>RBX_ERRO(msg)</td><td>Chama diretamente a função <code>Class.TestService:Error()</code>.</td></tr><tr><td>RBX_FAILURE(msg)</td><td>Chama diretamente a função <code>Class.TestService:Fail()</code>.</td></tr><tr><td>RBX_MESSAGE(msg)</td><td>Chama diretamente a função <code>Class.TestService:Message()</code>.</td></tr>
Microscópio |
Resumo
Propriedades
Se definido como verdadeiro, o jogo começará a funcionar quando o método TestService:Run() do TestService for chamado.
Uma descrição do teste sendo executado.
Mede quantos erros foram registrados na sessão de teste.
Quando definido como verdadeiro, o TestService será executado ao usar a ação Executar na Roblox Studio.
Define se o ambiente de física deve ou não ser limitado durante a execução deste teste.
Define se objetos físicos poderão ou não dormir enquanto a simulação de teste estiver em andamento.
O número de jogadores esperados neste teste, se algum.
Define uma quantidade específica de latência adicional experimentada pelos jogadores durante a sessão de teste.
Mede quantas chamadas de teste foram registradas na sessão de teste.
Define se o teste deve ser limitado para simular o tempo de acordo com o tempo do mundo real ou o mais rápido possível.
A quantidade máxima de tempo que os testes são permitidos para executar.
Medições de quantas chamadas de aviso foram registradas na sessão de teste.
Métodos
Imprime o resultado da condição para a saída.
Imprime "Test checkpoint: ", seguido por texto, para a saída, em texto azul.
Impressões de teste feitas para a saída, em texto azul.
Imprime uma mensagem vermelha para a saída, prefixada por TestService: .
Indica um erro fatal em uma executardo TestService.Se isso for chamado dentro de um script executando dentro do TestService, isso iniciará um ponto de interrupção na linha que invocou o erro.
Imprime a mensagem de teste, seguida por texto para a saída, em texto azul.
Imprime se uma condição é verdadeira junto com o texto de descrição.
Imprime se uma condição for verdadeira, caso contrário, imprime um aviso.
Executa scripts que são parentados ao TestService.
Eventos
- ServerCollectConditionalResult(condition : boolean,text : string,script : Instance,line : number):RBXScriptSignal
Dispedido quando o servidor deve coletar um resultado de teste condicional.
Dispedido quando o servidor deve coletar um resultado de teste.
Propriedades
AutoRuns
Se definido como verdadeiro, o jogo começará a funcionar quando o método TestService:Run() do TestService for chamado.
ExecuteWithStudioRun
Quando definido como verdadeiro, o TestService será executado ao usar a ação Executar na Roblox Studio.
Nota:
- Se a propriedade TestService.NumberOfPlayers for definida para um valor acima de 0, executar o jogo abrirá as janelas do estúdio NumberOfPlayers + 1, onde uma janela é um servidor e o resto são jogadores conectados a esse servidor.
- Tente manter esse valor dentro de um alcance racional (1 a 8 jogadores no máximo), caso contrário, a CPU do seu computador ficará sobrecarregada.
IsPhysicsEnvironmentalThrottled
Define se o ambiente de física deve ou não ser limitado durante a execução deste teste.
IsSleepAllowed
Define se objetos físicos poderão ou não dormir enquanto a simulação de teste estiver em andamento.
SimulateSecondsLag
Define uma quantidade específica de latência adicional experimentada pelos jogadores durante a sessão de teste.
ThrottlePhysicsToRealtime
Define se o teste deve ser limitado para simular o tempo de acordo com o tempo do mundo real ou o mais rápido possível.
Métodos
Check
Se a condição for verdadeira, imprime "Check passed: ", seguido por uma descrição para a saída, em texto azul.Caso contrário, imprime "Check failed: ", novamente, seguido por descrição, mas em texto vermelho.
Parâmetros
Devolução
Amostras 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 " Checkpoint de teste: ", seguido por texto , para a saída, em texto azul.
Parâmetros
Devolução
Amostras 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 Teste Feito para a saída, em texto azul.
Devolução
Amostras de código
This code would print Testing Done to the output, in blue text.
local TestService = game:GetService("TestService")
TestService:Done()
Error
Imprime uma mensagem vermelha para a saída, prefixada por TestService: .
Parâmetros
Devolução
Amostras 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 um erro fatal em uma executardo TestService.Se isso for chamado dentro de um script executando dentro do TestService, isso iniciará um ponto de interrupção na linha que invocou o erro.
Parâmetros
Devolução
Message
Imprime mensagem de teste , seguida por texto para a saída, em texto azul.
Parâmetros
Devolução
Amostras 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
Se condition for verdadeiro, imprime Require passed: , seguido por description , na saída em texto azul.Caso contrário, imprime Require failed. Test ended: , seguido por description , para a saída em texto vermelho.
Parâmetros
Devolução
Amostras 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
Se a condição for verdadeira, imprime Aviso passado: , seguido por descrição , para a saída, em texto azul.Caso contrário, imprime Aviso/advertência: , seguido por descrição , para a saída, em texto amarelo.
Parâmetros
Devolução
Amostras 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
Executa scripts que são parentados ao TestService.
Devolução
Eventos
ServerCollectConditionalResult
Dispedido quando o servidor deve coletar um resultado de teste condicional.