2016-05-18 11 views
0

ich MSTest bin mit meiner Unit-Test und aus irgendeinem Grund, den ganzen Test versagen mit der folgenden FehlermeldungMSTesthacks - Running in Kontinuierliche Integration mit Microsoft ALM nicht funktioniert

Unit Test Adapter warf Ausnahme auszuführen:

Datenquelle ‚XXX.YYY.DriverData.aboutThemContactInformationFlows‘ kann nicht in den Testkonfigurationseinstellungen zu finden ..

Aber der Test in meinem lokalen Rechner läuft gut. Nicht sicher, was falsch läuft.

Ich habe Visual Studio 2015 in meiner Testmaschine sowie in meiner Entwicklungsmaschine.

Die gleiche Einstellung läuft in meinem Dev-Rechner gut.

Lesen Sie den anderen Thread, der auf die fehlende app.config-Datei im Testprojekt verweist. Ich habe eine app.config Datei im Testprojekt.

Gibt es etwas, was ich vermisse. Im Folgenden finden Sie auch die Maschine 10 wird die Datei mit den Testeinstellungen

<?xml version="1.0" encoding="UTF-8"?> 
    <TestSettings name="UITestSettings" id="1623gdcf4-f2af-496f-b65h4-fe25w6c4e49cb" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010"> 
    <Description>These are default test settings for a remote test run.</Description> 
    <Deployment> 
    <DeploymentItem filename="XXX\TestData\LocationData.xls" /> 
    <DeploymentItem filename="XXX\TestData\UITestData.xls" /> 
    </Deployment> 
    <Execution parallelTestCount="0"> 
    <Timeouts runTimeout="36610000" testTimeout="36610000" /> 
    <TestTypeSpecific> 
     <UnitTestRunConfig testTypeId="13cdcs9d9-ddb5-4fa4-a97d-d965ccdfc6d4b"> 
     <AssemblyResolution> 
      <TestDirectory useLoadContext="true" /> 
     </AssemblyResolution> 
     </UnitTestRunConfig> 
     <WebTestRunConfiguration testTypeId="4ess7599fa-5ecb-43e9-a887-cd63cfdf72d207"> 
     <Browser name="Internet Explorer 9.0" MaxConnections="6"> 
      <Headers> 
      <Header name="User-Agent" value="Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)" /> 
      <Header name="Accept" value="*/*" /> 
      <Header name="Accept-Language" value="{{$IEAcceptLanguage}}" /> 
      <Header name="Accept-Encoding" value="GZIP" /> 
      </Headers> 
     </Browser> 
     </WebTestRunConfiguration> 
    </TestTypeSpecific> 
    <AgentRule name="LocalMachineDefaultRole"> 
    </AgentRule> 
    </Execution> 
    <Properties> 
    <Property name="TestSettingsUIType" value="UnitTest" /> 
    </Properties> 
</TestSettings> 

Nun, die Dev-Maschine eine Win10-Maschine und die Testmaschine gewinnen.

Hilfe bitte. Jede Information wäre viel hilfreich

+0

MSTesthacks ist ein Unit-Test-Framework ähnlich wie MSTest, bietet jedoch mehr Flexibilität beim Übergeben von Daten an den einzelnen Test. Ich verwende es, um benutzerdefinierte Datenquellen zu übergeben. Sehen Sie sich https://github.com/Thwaitesy/MSTestHacks an. Es war wirklich cool anfänglich zu verwenden, aber ... nicht jetzt .. –

+0

Ok, cool, ich habe ein neues Tag erstellt, damit wir Fragen in Zukunft problemlos mit MSTestHacks kategorisieren können. – mason

+0

Welche Build verwenden Sie, Xaml oder vNext? –

Antwort

0

Es kann oder kann nicht helfen Ihnen jetzt, aber ich habe gerade das gleiche Problem mit MSTestHacks aufgetreten und in meinem Fall, wie in Ihrem, hatte ich bereits eine app.config, die das ist Lösungsvorschlag in verschiedenen GitHub-Themen. Ich habe festgestellt, dass Sie eine Annahme über den vollständig qualifizierten Namespace gemacht haben, den Sie im Attribut DataSource benötigen.

In meinem Fall war ich den Namespace angenommen hatte

FrontOffice.BusinessLogicLayer.Tests.Queries.GenericTools.GetToolsForPartnerQueryTests.TestCases 

Dies liegt daran, das Projekt FrontOffice.BusinessLogicLayer.Tests benannt wurde. Aber als ich die Assembly name und Root namespace Felder in den Projekteigenschaften überprüfte, entdeckte ich, dass sie als FrontOffice.BusinessLogicLayerTests eingestellt worden waren.

Sobald ich das korrigierte, lief es wie erwartet. Es scheint sehr offensichtlich zu sein, aber überprüfe deine Namespaces sorgfältig, es sei denn, du hast sie erstellt. Es gibt immer eine Chance, dass jemand anderes den (meiner Meinung nach) dummen Trick macht, Projekte zu haben, deren Namen nicht mit ihren Namespaces übereinstimmen.