A partir de 27 de março de 2025, recomendamos usar android-latest-release
em vez de aosp-main
para criar e contribuir com o AOSP. Para mais informações, consulte Mudanças no AOSP.
Testar o agendador de comandos
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
No Tradefed, cada solicitação de teste passa pelo
Programador de comandos
para ser executada. O agendador de comandos é um componente importante do harness necessário para
executar testes.
Ciclo de vida
Quando uma solicitação de teste é apresentada ao Tradefed (por exemplo, entrada do
console), ela passa pelos seguintes eventos antes de ser executada:
- A solicitação de teste é analisada: uma solicitação de teste geralmente é composta por uma referência de configuração
Tradefed XML seguida de opções.
Por exemplo:
> run host --class com.android.tradefed.build.BuildInfoTest
- O Device Manager é solicitado para dispositivos que correspondem à solicitação de teste:
o Device Manager alocar um dispositivo
que corresponde às solicitações de teste. Por exemplo, se um dispositivo Pixel for solicitado,
o Gerenciador de dispositivos vai procurar um dispositivo Pixel disponível.
- A solicitação de teste + dispositivos são iniciados como uma invocação: o teste está começando.
- Liberação do dispositivo: quando a invocação é concluída, o dispositivo alocado é
liberado e pode ser alocado para outros testes.
Invocação do Tradefed
Uma invocação no Tradefed se refere ao momento em que um comando de teste está sendo executado.
Os dispositivos incluídos na invocação são marcados como allocated
e não podem ser usados
por outros testes para execução.
O TF vai executar as seguintes etapas nesta ordem:
- Download de artefatos de build e teste
- Preparação do destino
- Execução de teste
- Limpeza de destino
- Relatórios de resultados
Cada etapa é descrita em mais detalhes na
seção de arquitetura.
O conteúdo e os exemplos de código nesta página estão sujeitos às licenças descritas na Licença de conteúdo. Java e OpenJDK são marcas registradas da Oracle e/ou suas afiliadas.
Última atualização 2025-07-27 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-07-27 UTC."],[],[],null,["# Test Command Scheduler\n\nIn Tradefed, every single test request goes through the\n[Command Scheduler](https://android.googlesource.com/platform/tools/tradefederation/+/refs/heads/android16-release/src/com/android/tradefed/command/CommandScheduler.java)\nto be run. So the Command Scheduler is a key component of the harness needed to\nrun tests.\n\nLifecycle\n---------\n\nWhen a test request is presented to Tradefed (for example, input from the\nconsole), it will go through the following events before being run:\n\n1. *Test request is parsed* - A test request is usually composed of an XML Tradefed configuration reference followed by options. For example: `\u003e run host --class com.android.tradefed.build.BuildInfoTest`\n2. *Device Manager is requested for device(s) matching the test request* - Device Manager [allocates a device](/docs/core/tests/tradefed/architecture/device-manager/device-allocation) that matches the test requests. For example, if a Pixel device is requested then Device Manager will look for an available Pixel device.\n3. *Test request + device(s) starts as an invocation* - Testing is starting.\n4. *Device release* - Once the invocation is finished, the device allocated will be released and can be allocated for other tests.\n\nTradefed invocation\n-------------------\n\nAn invocation in Tradefed refers to when a test command is currently executing.\nDevices included in the invocation are marked as `allocated` and cannot be used\nby other tests to run.\n\nTF will execute the following steps in this order:\n\n1. [Build and test artifacts download](/docs/core/tests/tradefed/architecture/build-provider)\n2. [Target preparation](/docs/core/tests/tradefed/architecture/target-preparer)\n3. [Test execution](/docs/core/tests/tradefed/architecture/advanced/test-runner)\n4. [Target clean up](/docs/core/tests/tradefed/architecture/target-preparer)\n5. [Result reporting](/docs/core/tests/tradefed/architecture/result-reporter)\n\nEach step is described in more detail within the\n[Architecture section](/docs/core/tests/tradefed/architecture)."]]