【发布时间】:2019-07-23 06:06:33
【问题描述】:
我正在尝试在 TFS 中设置自动化测试。我有一个包含一个项目和两个单元测试的解决方案。
我可以很好地在 TFS 中构建我的解决方案,并将我的测试用例与单元测试相关联。
当我通过 TFS 运行测试用例时,状态变为“进行中”,我可以看到我的代理正在接手任务。几秒钟后,代理提示“Job Release completed with result: SucceededWithIssues”。当我检查代理的日志时,最后一行是完整的。
当我回到 TFS 时,状态仍然是“进行中”。
当我单击“运行”图标时,它会立即提示我一个对话框,并带有一个“查看测试运行”按钮。当我点击那里时,它显示“刚刚中止,运行了 03 秒”。
谁能帮助我朝着正确的方向前进?
更新
我设法找到了一个日志文件:
2019-03-01T08:50:15.6478536Z Total Tests : 1, Passed Tests : 0
2019-03-01T08:50:18.6816644Z Test source filter: **\Tests.dll
2019-03-01T08:50:18.6816644Z Count of test sources found: 0
2019-03-01T08:50:18.6826624Z ##[warning]No test sources found
2019-03-01T08:50:18.6896764Z ##[error]ExecutionTaskStateModel.ExecuteTask: Recived error while executing task: System.AggregateException: One or more errors occurred. ---> System.InvalidOperationException: No test assemblies found on the test machine matching the source filter criteria or no tests discovered matching test filter criteria. Verify that test assemblies are present on the machine and test filter criteria is correct.
从我的构建日志中,我得到了这个:
2019-03-01T10:34:58.4371090Z Total tests: 2. Passed: 2. Failed: 0. Skipped: 0.
所以它会在正确的位置提取我的测试,并在构建中通过它们,而不是在 testing-post-build(发布后?)阶段。
所以它正在寻找一个测试,但随后提示它没有找到一个测试?我错过了什么?
更新 -
【问题讨论】:
-
您是否仔细检查了测试任务的设置?我的意思是,您正在测试哪些程序集,在哪个文件夹中进行搜索等。实际上,也许您可以与我们分享这些设置,以便我们可以更好地为您提供帮助。
-
感谢@QuentinS。我不想立即分享所有内容,以避免信息过载。你会从什么设置开始?
-
当然。我想检查您的测试选择设置,尤其是您在“使用选择测试”字段中选择的设置。然后,查看您在以下字段中输入的内容。
-
上面写着
##[warning]No test sources found。这意味着它无法发现测试。您的测试程序集真的只是命名为“Tests.dll”吗?您是否为您的测试框架安装了合适的测试适配器? -
@QuentinS.,请查看我对问题的编辑。我添加了一个屏幕截图。如果还有什么我可以补充的,请告诉我。
标签: c# unit-testing tfs automated-tests