2014-09-04 11 views
5

W systemie zainstalowany jest serwer BuildCom TeamCity 8.1.4 z zainstalowanym VS2013.Tworzenie i testowanie za pomocą TeamCity i Fakes Framework

Niedawno wprowadziłem testy bazujące na Microsoft Fakes Framework. Z tego powodu musiałem dodać kilka odniesień do nowych zespołów Fake i zespołu Microsoft.VisualStudio.TestTools.UnitTesting. To wszystko działa dobrze na mojej maszynie do programowania lokalnego.

Teraz, gdy próbuję zbudować rozwiązanie na serwerze TeamCity następujące błędy są wyrzucane:

SomeDirectory \ Procesory \ ProcessorTests.cs (3, 27): error CS0234: Typ lub Nazwa przestrzeni nazw 'Podróbki' nie istnieje w przestrzeni nazw 'SomeDirectory.Database' (czy brakuje odwołania do zestawu?)

SomeDirectory \ Procesory \ ProcessorTests.cs (7, 66): error CS0234: typ lub nazwa przestrzeni nazw "Podróbki" nie istnieje w przestrzeni nazw "SomeDirectory.Service.P rocessor.Report.Processors' (czy brakuje odwołania do zestawu?)

SomeDirectory \ Procesory \ ProcessorTests.cs (9, 17): error CS0234: The typu lub obszaru nazw 'QualityTools' nie istnieje w nazw „Microsoft” (czy brakuje odwołania do zestawu?)

ja nieco zrozumieć pierwsze dwa błędy, bo nie popełniły fałszywy zestawów w SVN, dlatego nie można znaleźć. Nie chcę też zatwierdzać tych plików, ponieważ serwer kompilacji powinien je sam generować. BuildAction plików podróbek ma wartość Fakes.

Zgaduję, że pierwsze dwa błędy wywodzą się z trzeciego błędu. Zgodnie z moją wiedzą przestrzeń nazw QualityTools znajduje się w zespole Microsoft.VisualStudio.TestTools.UnitTesting.

Próbowałem to naprawić z kilkoma ustawieniami. Oryginalny etap budowy miałem skonfigurowane było:

typu Runner = Visual Studio (SLN)

Visual Studio = Microsoft Visual

Studio 2013

Zmieniłem to na:

Typ chodnika = MSBuild

wersja MSBuild = Microsoft Budowanie Tools 2013

MSBuild ToolsVersion = 12,0

Próbowałem również MSBuild wersję .NET 4.5 z ToolsVersion 4.0.

Wszystkie te ustawienia powodują takie same błędy.

Jak można zrozumieć, rozwiązanie nie skompiluje się w tej chwili, więc nie mogę stwierdzić na pewno, czy testy będą przeprowadzane, czy nie. Znalazłem już a post, jak skonfigurować krok testowy w TeamCity, ale to już kolejny krok.

Ktoś ma pomysł, jak rozwiązać te problemy z TeamCity i VS2013?

Edit

Ja już sprawdzić, czy zespół TestTools.UnitTesting istnieje w systemie plików. Zespół ten występuje, więc nie powinno być problemu

Edycja 2

Ups, mam misread trzeci komunikat o błędzie. Powinienem był szukać zespołu Microsoft.QualityTools.Testing.Fakes, ponieważ mówi on, że nie może rozwiązać przestrzeni nazw QualityTools. Po sprawdzeniu ścieżki Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\PublicAssemblies mogę potwierdzić, że biblioteka dll nie jest obecna w systemie plików.

Skopiowałem to ręcznie do buildserver i zobaczę, co będzie dalej.

Edycja 3

Po skopiowaniu zespół Microsoft.QualityTools.Testing.Fakes do serwera kompilacji, rozwiązanie kompiluje jak czar. Jednak teraz jestem otrzymaniu znajomy

udało się rozwiązać ścieżkę profiler z COR_PROFILER_PATH i zmiennych środowiskowych COR_PROFILER.

Widziałem to już wcześniej na serwerze TFS2012. Oznaczało to, że nie był w stanie obsłużyć podkładek i musieliśmy uaktualnić do TFS2013.

Właśnie zalogowałem się na serwerze buildserver i zobaczyłem, że wersja VS2013 wygasła. Być może dlatego nie działa poprawnie. Zainstalowana instalacja VS2012 to wersja 11.0.50727.1, więc aktualizacja 3 nie jest zainstalowana. Omówię z moimi kolegami, czy można to zaktualizować. Mam nadzieję, że rozwiąże to problemy, przed którymi stoję z podróbkami i podkładkami.

Rozwiązane Najwyraźniej ktoś myślał, że to zabawne, aby zainstalować VS2013 zawodowego na buildserver. Dlatego podróbki nie mogły zostać uruchomione, ponieważ jest to funkcja Premium. Zainstalowałem wersję Premium i wszystko działa teraz jak urok.

Odpowiedz

2

Podróbki przyzwyczajenie biegać z MSTest trzeba was VSTest.Console

Zazwyczaj (dla VS2012 w tym przypadku) jest położony C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe

Istnieje również biegacz dostępny na http://confluence.jetbrains.com/display/TW/VSTest.Console+Runner, ale jeśli tego nie robi praca, uruchamiać plik wykonywalny "ręcznie", tutaj jest odniesienie do uruchamiania vstest.console.exehttp://msdn.microsoft.com/en-us/library/jj155796.aspx.

Jeśli masz zainstalowany VS2013 na komputerze agenta (wersja Pro zawiera podróbki, ekspresowe nie) powinien on skompilować dobrze. Czy próbowałeś wypróbować czystą wersję na swoim urządzeniu?

+0

Dzięki za odpowiedź. Znalazłem to również, jak wspomniano w oryginalnym poście.Samouczek, którego przestrzegałem podczas testu, to: http://blog.degree.no/2012/09/unit-testing-visual-studio-2012-fakes-in-team-city/ Jednak obecnie mam problemy z kompilacją, więc jeszcze nie wykonuję kroku testowego. –

+0

Czy próbowałeś wyczyścić kasę i odbudować na swoim komputerze, być może niektóre pliki nie są sprawdzane? –

Powiązane problemy