Znalazłem klasę TestExecution, która eksponuje kilka wydarzeń, które byłyby niezwykle pomocne. Jednak nie mogę znaleźć odniesienia do niego innego niż dokumentacja MSDN, a dokumentacja nie dostarcza żadnych wskazówek, jeśli chodzi o sposób, w jaki jest używany, lub jak mogę uzyskać odniesienie do instancji podczas uruchomienia testu.Jaki jest cel klasy TestExecution w MSTest?
Przeglądanie za pomocą reflektora .NET nie było pomocne - TestExecution
jest implementowane przez inną klasę, UnitTestExecution
, która jest wewnętrzna. Nie mogłem znaleźć żadnych innych odniesień do żadnej z klas w żadnej z bibliotek Microsoft.VisualStudio.QualityTools. *, Ani w postaci kolejnych implementacji, ani odwołań jako typów właściwości w innych klasach.
W jaki sposób mogę uzyskać dostęp do tych wydarzeń?
Wygląda jak klasa abstrakcyjna, więc prawdopodobnie będziesz musiał czerpać z niej i implementować niektóre abstrakcyjne metody/właściwości. – Bernard
Niekoniecznie ... Myślę, że jest bardziej prawdopodobne, że abstrakcja jest używana przez framework. Ponieważ jest to klasa publiczna, a ponieważ UnitTestExecution nie jest, wydaje się postępować zgodnie ze schematem ujawniania abstrakcji, ale nie z implementacją. Zwykle istnieje sposób na uzyskanie odwołania do instancji abstrakcji (tak jak w przypadku właściwości TestContext, gdzie TestContext jest także klasą abstrakcyjną), ale nie udało mi się go znaleźć. –
Wydaje się, że jest to jedna z tych sytuacji, w których najlepiej byłoby zapytać autora. – Bernard