You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在运行C# NUnit Selenium测试的批处理文件中生成结果日志

给Selenium自动化测试批处理添加测试结果日志生成指令

首先你原批处理里的set nunit-console nunit.tests.dll /out:TestResult.txt这一行是无效的——因为你实际用的是Visual Studio的vstest.console.exe而非NUnit自带的控制台运行器,直接删掉这行就行。

下面是两种给vstest.console.exe添加日志生成功能的方案:

方案一:生成Visual Studio兼容的TRX格式结果文件

这种格式能在Visual Studio中直接打开查看详细测试结果,包含用例执行状态、耗时、错误信息等:

set test_runner="C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\Extensions\TestPlatform\vstest.console.exe"
set test_dlls="C:\Users\user1\source\repos\TestProject1\TestProject1\bin\Debug\net6.0\TestProject1.dll"
set tests="Test1_Login,Test2_Register,Test3_Logout"
set result_dir="C:\Users\user1\TestResults"
%test_runner% %test_dlls% /tests:%tests% /logger:trx /resultsDirectory:%result_dir%
  • /logger:trx:指定生成TRX格式的测试结果文件
  • /resultsDirectory:%result_dir%:指定结果文件的存放目录,运行后会在该目录下生成带时间戳的.trx文件

方案二:同时生成文本格式日志(控制台输出留存)

如果你需要纯文本的日志文件,把控制台的输出(包括错误信息)直接写入文件,可在方案一基础上添加重定向命令:

set test_runner="C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\Extensions\TestPlatform\vstest.console.exe"
set test_dlls="C:\Users\user1\source\repos\TestProject1\TestProject1\bin\Debug\net6.0\TestProject1.dll"
set tests="Test1_Login,Test2_Register,Test3_Logout"
set result_dir="C:\Users\user1\TestResults"
set text_log="C:\Users\user1\TestResults\TestOutput.txt"
%test_runner% %test_dlls% /tests:%tests% /logger:trx /resultsDirectory:%result_dir% > %text_log% 2>&1
  • > %text_log% 2>&1:把控制台的标准输出和错误输出全部写入指定的文本文件,方便快速查看执行过程

如果只需要纯文本日志,不需要TRX文件,直接去掉/logger:trx和/resultsDirectory:%result_dir%参数即可。

内容的提问来源于stack exchange,提问作者Sreedhar Danturthi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 06:17:43