TeamCity似乎支持显示忽略的测试,但我试图弄清楚它是如何确定忽略测试用例的。有人可以通过@Ignore(“reason”)的JUnit测试为我提供XML输出吗?
答案 0 :(得分:2)
官方JetBrains TeamCity公共论坛http://devnet.jetbrains.net/message/5442048
回答了这个问题TeamCity提供了几个自动报告测试的捆绑运行程序。 如果是自定义运行程序,则可能不会自动报告测试,但如果工具支持生成兼容的XML报告,则TeamCity可以从此报告中导入测试。
要从自定义运行器导入此类报告,您需要使用TeamCity“XML报告处理”构建功能。
Ant JUnit解析器实际上支持匹配从Apache Ant src检索的DTD的报告。 它不提供有关忽略测试的任何信息。 因此,生成类似Ant JUnit的报告的工具可以自由地以不同的方式保存被忽略的测试。
目前支持以下结构将test标记为忽略(不同的工具通常使用其中一种):
...<testcase executed="false"...>...
...<testcase...> <skipped/></testcase>...
...<testcase status="ignored"...>...
不支持忽略理由。
答案 1 :(得分:1)
好@Ignore("reason")
只是将测试标记为关于junit的问题,而“原因”是一个人为可读的文本,用于忽略原因。根据您使用的JUnit运行器,可能只是完全跳过测试,可能会跳过测试并将其视为忽略(例如测试:x失败,跳过等等),或者在运行时可能实际显示人类可读的texxt套件。
例如,当我使用maven运行我的单元测试时(通过mvn测试)我只得到跳过的(@Ignore
注释的)JUnit测试的计数,不显示“原因”文本:
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running service.impl.DepartmentServiceStatefulTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 1, Time elapsed: 0.1 sec
Running model.criteria.CriteriaAPITest
答案 2 :(得分:0)
JUnit忽略使用@Ignore
注释的测试。没有生成输出。我从未使用过TeamCity,但它似乎正在读取单元测试文件,并显示有关被忽略的测试的信息。
答案 3 :(得分:0)
似乎状态正在通过build messages。