W naszym projekcie korzystamy z Visual Studio 2012 i Team Foundation Server 2010. Ponieważ używamy Microsoft Fakes, mogliśmy nie korzystać z uruchomionej funkcji testowania naszego Team Build 2010, stworzyłem działanie kompilacji, które wywołuje VSTest.Console.exe przekazując zestawy testowe. To podejście działa dobrze dla nas. Jednak po ostatniej odprawie otrzymujemy następujący błąd podczas wykonywania pliku Vstest.console.exeWystąpił wyjątek podczas wywoływania executora 'executor: // mstestadapter/v1': Odwołanie do obiektu nie jest ustawione na instancję obiektu
Błąd: Wystąpił wyjątek podczas wywoływania executora "executor: // mstestadapter/v1": Odwołanie do obiektu nie jest ustawione na instancję obiektu.
Skopiowałem pliki binarne na mój komputer lokalny i mogłem ponownie uzyskać błąd. Co ciekawe, uruchamiamy kompilację dev przed odprawą, która uruchamia ten sam plik vstest.console.exe z tymi samymi parametrami i działa poprawnie. Mam dwa foldery na moim komputerze, dla jednego połączenie działa dobrze, a dla innych nie. Skompilowane złożenia wyglądają tak samo i nie ma zbyt wielu różnic, aby to zasugerować.
Próbowałem używać Monitora Procesu, ale nie mogłem znaleźć niczego oczywistego poza tym, że proces powraca z kodem wyjścia 1. Czy ktoś wie dużo na temat tego błędu? Czy jest jakiś sposób, aby uzyskać więcej informacji z mojego testu?
Pozdrawiam,
Hamid
Naprawiono to dla mnie. Czy ktoś ma pojęcie, dlaczego uniemożliwiłoby to uruchomienie testów? To znaczy, kto by pomyślał, że atrybut AssemblyCulture wpłynie na twoje testy jednostkowe ... – mikesigs
W ramach MS Test analizuje typy w twoich złożeniach, aby zobaczyć, które z nich są oznaczone atrybutami TestClass i TestMethod. Przypuszczalnie robi to poprzez odbicie GetCustomAttribute. Czy to możliwe, że wyliczając Zgromadzenie i uzyskując jego atrybuty, nie radzi sobie właściwie z AssemblyCulture? Dziwne przypuszczenie - to, co robi, analizując atrybuty Zgromadzenia, a nie tylko atrybuty Typu, nikt nie zgaduje. – PhillipH