Os projetos de teste MTP são construídos como executáveis que podem ser executados (ou depurados) diretamente. Não há nenhum console ou comando de execução de teste extra. O aplicativo sai com um código de saída diferente de zero se houver um erro, o que é típico para a maioria dos executáveis. Para mais informações sobre os códigos de saída conhecidos, consulte códigos de saída MTP.
Sugestão
Você pode ignorar um código de saída de específico usando a opção de linha de comando --ignore-exit-code.
Também pode definir opções de linha de comando que se aplicam a um projeto de teste específico no ficheiro de projeto usando a propriedade TestingPlatformCommandLineArguments MSBuild. Um caso de uso comum é para projetos de teste que têm todos os testes ignorados, que normalmente sairão com o código de saída 8 (a sessão de teste executou zero testes). Neste cenário, pode adicionar o seguinte debaixo de um PropertyGroup no seu ficheiro de projeto:
<TestingPlatformCommandLineArguments>$(TestingPlatformCommandLineArguments) --ignore-exit-code 8</TestingPlatformCommandLineArguments>
Publicar o projeto de teste usando dotnet publish e executar a aplicação diretamente é outra forma de executar os testes. Por exemplo, executar o ./Contoso.MyTests.exe. Em alguns cenários, também é viável usar dotnet build para produzir o executável, mas podem haver casos especiais a considerar; por exemplo, AOT Nativo.
Utilize dotnet run
O comando dotnet run pode ser usado para compilar e executar o seu projeto de teste. Esta é a maneira mais fácil, embora às vezes mais lenta, de executar seus testes. Usar dotnet run é prático quando edita e executa testes localmente, porque garante que o projeto de teste é reconstruído quando necessário.
dotnet run também encontrará automaticamente o projeto na pasta atual.
dotnet run --project Contoso.MyTests
Para obter mais informações sobre dotnet run, veja dotnet run.
Utilize dotnet exec
O comando dotnet exec ou dotnet é usado para executar (ou rodar) um projeto de teste já construído, sendo esta uma alternativa à execução direta da aplicação.
dotnet exec requer o caminho para o DLL do projeto de teste construído.
dotnet exec Contoso.MyTests.dll
ou
dotnet Contoso.MyTests.dll
Observação
Fornecer o caminho para o executável do projeto de teste (*.exe) resulta num erro:
Error:
An assembly specified in the application dependencies manifest
(Contoso.MyTests.deps.json) has already been found but with a different
file extension:
package: 'Contoso.MyTests', version: '1.0.0'
path: 'Contoso.MyTests.dll'
previously found assembly: 'S:\t\Contoso.MyTests\bin\Debug\net10.0\Contoso.MyTests.exe'
Para obter mais informações sobre dotnet exec, consulte dotnet exec.
Utilize dotnet test
O MTP oferece uma camada de compatibilidade com vstest.console.exe e dotnet test, garantindo que possa executar os seus testes como antes, enquanto permite novos cenários de execução.
dotnet test Contoso.MyTests.dll
Os testes MTP podem ser executados (e depurados) no Visual Studio, integram-se com o Test Explorer e também podem ser executados diretamente como projeto de arranque.
Executa a aplicação com o Visual Studio
Os projetos de teste MTP são construídos como executáveis e podem ser executados diretamente. Isso executa todos os testes no executável fornecido, a menos que um filtro seja fornecido.
- Navegue até ao projeto de teste que pretende executar no Explorador de Soluções, selecione-o com o botão direito do rato e selecione Definir como Projeto de Inicialização.
- Selecione Debug>Iniciar sem Depuração (ou use Ctrl+F5) para executar o projeto de teste selecionado.
A janela do console é exibida, mostrando a execução e o resumo do seu teste.
Depure a aplicação diretamente no Visual Studio
O projeto de teste MTP pode ser debugado diretamente. Para depurar todos os testes no executável fornecido, a não ser que um filtro seja fornecido:
- Navegue até ao projeto de teste que pretende executar no Explorador de Soluções, selecione-o com o botão direito do rato e selecione Definir como Projeto de Inicialização.
- Defina o ponto de interrupção no teste que você gostaria de depurar.
- Vá a Debug>Iniciar Depuração (ou pressione F5) para depurar o projeto de teste selecionado.
Todos os testes são executados até que o teste que possui um ponto de interrupção seja atingido. Passe pelo teste para depurá-lo. Quando terminares de depurar, a aplicação continuará a executar todos os testes restantes, a menos que a interrompas.
Usar o Explorador de Testes
Para executar um teste, navegue até Gerenciador de Testes, selecione o teste (ou testes) a ser executado. Selecione-o com o botão direito do mouse e escolha Executar. Da mesma forma que para depurar um teste, selecione o teste (ou testes) no Gerenciador de Testes, selecione com o botão direito do mouse e escolha Depurar.
Observação
A atualização automática dos testes sem compilar o projeto não está disponível.
A extensão C# juntamente com C# Dev Kit permite depurar/executar testes em código Visual Studio, além de adicionar integração com o Explorador de Testes da Visual Studio Code.
Executa a aplicação com o Visual Studio Code
Os projetos de teste MTP são construídos como executáveis e podem ser executados diretamente. Isso executa todos os testes no executável fornecido, a menos que um filtro seja fornecido.
- Navegue até um arquivo de teste para o qual você deseja executar testes.
- Use Ctrl+F5 para executar o projeto de teste selecionado. Se você tiver vários projetos, um pop-up solicitará que você selecione o que será executado.
A janela do console é exibida, mostrando a execução e o resumo do seu teste.
Depure a aplicação diretamente no Visual Studio Code
Os projetos de teste MTP são construídos como executáveis e podem ser executados diretamente. Isso executa todos os testes no executável fornecido, a menos que um filtro seja fornecido.
- Navegue até um arquivo de teste para o qual você deseja executar testes.
- Use F5 para depurar o projeto de teste selecionado. Se você tiver vários projetos, um pop-up solicitará que você selecione o que será executado.
Sugestão
Existem várias outras formas de executar um project dotnet usando C# DevKit, como correr a partir do solution explorer ou criar configurações de lançamento correspondentes. Estas são especificadas na documentação do Código Visual Studio.
Quando o projeto é executado, aparece o separador de saída com a execução e o resumo da sua execução de teste.
Usar o Explorador de Testes
Para executar um teste, navegue até Gerenciador de Testes, selecione o teste (ou testes) a ser executado. Selecione-o com o botão direito do mouse e escolha Executar. Da mesma forma que para depurar um teste, selecione o teste (ou testes) no Gerenciador de Testes, selecione com o botão direito do mouse e escolha Depurar.
Observação
A atualização automática dos testes sem compilar o projeto não está disponível.
Para executar um único project de teste em CI, adicione um passo para cada executável de teste que pretende executar, como o seguinte no Azure DevOps:
- task: CmdLine@2
displayName: "Run Contoso.MyTests"
inputs:
script: '.\Contoso.MyTests\bin\Debug\net10.0\Contoso.MyTests.exe'
Execute o dotnet test comando manualmente, semelhante ao fluxo de trabalho local típico:
- task: CmdLine@2
displayName: "Run tests"
inputs:
script: 'dotnet test' # add command-line options as needed
Execute usando a tarefa DotNetCoreCLI Azure com o comando test. Isto requer um global.json ficheiro na raiz do teu repositório que especifique o MTP como executor de teste:
{
"test": {
"runner": "Microsoft.Testing.Platform"
}
}
- task: DotNetCoreCLI@2
displayName: "Run tests"
inputs:
command: test
Observação
A versão 2.263.0 da tarefa adicionou suporte para MTP em DotNetCoreCLI.