Ich versuche Coded UI Tests für meine Windows Phone 8.1 App zu erstellen, habe aber einige Schwierigkeiten mit meinen Testmethoden.C# -Einheitstest: UnauthorizedAccessException bei Verwendung der API, die das Netzwerk verwendet
In meinen Testmethoden rufe ich zunächst eine Methode auf, die sich mit der API meines Backends verbindet. Der API-Aufruf veranlasst mein Backend, eine Benachrichtigung an meine App zu senden. Was ich jetzt mit meinem UI-Test tun möchte, ist der Test und vergewissere dich, dass die Benutzeroberfläche die Benachrichtigung und die Daten, die sie erhalten hat, korrekt anzeigt.
Kurz gesagt: Ich möchte einen Test erstellen, der eine Benachrichtigung von meinem Back-End auslöst, und dann überprüft, dass die Benutzeroberfläche wie erwartet nach dem Empfangen verhält.
Das Problem dabei ist, dass, wann immer ich die Methode aufrufen, die die Back-End-API-Aufrufe, erhalte ich ein:
System.UnauthorizedAccessException: Die Verwendung von Netzwerk-APIs erfordert die ID_CAP_NETWORKING Fähigkeit in zu definierende die Anwendung manifest
Dieses Flag ordnungsgemäß in der Anwendung festgelegt wird sich manifestieren und aus guten Gründen, ich kann es nicht in meinem codierten UI-Test-Projekt festgelegt, da sie keine Anwendung manifestieren hat.
Ich habe versucht, um dies zu umgehen, indem Sie ein drittes Projekt mit nur der API (so dass ich ein Telefon, Test-und API-Projekt). Das Testprojekt würde jetzt die API-Aufrufmethode in einem anderen Projekt aufrufen, aber das half nicht.
Gibt es irgendwelche Umgehungsmöglichkeiten und wenn ja, welche wären das?
Danke!
In Verbindung stehende: http://stackoverflow.com/questions/30211128/how-to-add-capabilities-to-coded-ui-test-windows-phone-8-1-project-in-c – Caramiriel
Danke für die Kommentar. Ich habe mir diesen Link bereits angesehen und ich verstehe ihren Punkt (es ist ein guter - ich möchte die Benutzeroberfläche des Projekts testen, nicht die einzelnen Netzwerkelemente). Mein Niche-Problem ist in diesem Fall, dass ich zwei Apps habe: Eine für die Konsumenten und eine für den Einzelhandel. Die Consumer-App muss Anfragen von der Retail-App genehmigen, sodass ich wenig bis nichts über die Benutzeroberfläche testen kann, sofern nicht eine Anfrage von der Merchant-App erfolgt. Deshalb versuche ich Code-Behind in meinem Consumer-Test, um eine Anfrage zu senden, so gibt es eine Anfrage zu handeln, wenn ich meinen Test starte. – oPolo