Как получить идентификатор WorkItem, который начал автоматизированный тест

Обновить

April 2019

Просмотры

1.3k раз

1

Введение:
В VS2012, мы имеем набор WorkItems, которые планируется автоматизировать. Я создал набор автоматизированных тестов через SpecFlow в VS2010. Для подключения WorkItem с автоматизированным тестом, я должен выбрать WorkItem и поиск автоматизированного теста , который может быть только один раз метода.

Недостаток заключается в том, что при большом количестве TestMethods (и у нас), список очень длинный. Это будет утомительно для подключения WorkItem с соответствующим TestMethod. Таким образом, многие из наших тестов (и, следовательно, имена TestMethod) генерируются автоматически, так как мы используем SpecFlow. А когда командный игрок изменить название сценария, это имя TestMethod также изменяется, разрывая связь между WorkItem и автоматизированным тестированием.

То , что я хочу:
Я хочу , чтобы создать единый TestMethod , которые могут быть выбраны для каждого автоматизированного WorkItem. Это TestMethod извлекает идентификатор WorkItem и ищет для TestMethod , которое начинается с ID, или имеет атрибут Tag SpecFlow с этим идентификатором. Поэтому мне нужен идентификатор WorkItem.

Вопрос:
Как получить идентификатор WorkItem , который инициировал проверку?

1 ответы

4

I found the solution for retrieving the test case ID for a workitem in TFS for tests that are executed by Microsoft Test Manager:

string tcId = TestContext.Properties["__Tfs_TestCaseId__"].ToString();

Provided that this method is in a TestClass object. A TestClass object automatically gets a TestContext instance. MTM is using the TestContext to serve information to the TestMethod it is running.

A full list of the (undocumented) properties can be found on the blog of InfoSupport.

Связанные вопросы