2012-02-09 10 views
5

Quando si crea un servizio Web con ASP.NET, viene creata automaticamente una pagina di prova. Come puoi fare la stessa cosa con i servizi web di WCF?Come si creano le pagine di prova WCF?

+0

+1. In WCF REST si può andare a service.svc/help e vedere un elenco delle operazioni di servizio, come vengono chiamati, e usare l'URL per "testare" le operazioni GET, ma ovviamente questa non è una vera pagina di test, né tu può testare i metodi POST allo stesso modo. Forse il modo più semplice è generare un proxy, un progetto di test con il riferimento ad esso e chiamare ogni operazione di servizio in un metodo di prova? –

+0

Chiarimento ... ASP.NET crea automaticamente una pagina di prova * manuale *. Un approccio migliore è per voi di codificare un test unitario automatizzato utilizzando un framework di test comune. I giorni di inserimento manuale dei dati ripetuti sono scomparsi da tempo ... – SliverNinja

+0

Un test di unità automatizzato non ti aiuterà quando devi solo controllare un clic una chiamata di servizio o richiamare una funzione che non è stata ancora inserita in una GUI. –

risposta

2

Per servizi WCF "regolari" (cioè SOAP), è possibile utilizzare lo WCF Test Client tool per verificare che non ci sia supporto immediato per una pagina di prova. Per i servizi REST, è possibile dare uno sguardo al progetto di codeplex al numero http://wcf.codeplex.com: nell'ultima versione supporta la pagina di test con cui è possibile testare il servizio. È possibile trovare ulteriori informazioni su quest'ultimo a http://wcf.codeplex.com/wikipage?title=Introducing%20the%20WCF%20Web%20API%20Test%20Client.

1

Si consiglia inoltre di creare test automatici per il servizio. Oltre ai test unitari che hai per testare il funzionamento interno del servizio stesso (giusto?), Puoi anche creare quelli che alcuni chiamerebbero test di integrazione usando lo stesso framework. Aggiungi un riferimento di servizio al progetto di test e crea una serie di test che chiamano le operazioni del tuo servizio.

Questo è un modo migliore per farlo, secondo me, poiché è così che i client chiameranno il servizio, tramite codice, non attraverso una pagina di test.

+0

Questa risposta è completamente fuori tema. La pagina di prova generata automaticamente consente di eseguire un servizio con un semplice browser. –

+1

Non c'è nessuna pagina di prova generata automaticamente. Quello che i servizi ASMX creati non era utile se il tuo servizio richiedeva parametri complessi in ogni caso. Creare i propri test è l'unico modo generale per testare i servizi. –

+0

+1: è un peccato testare qualcosa tramite un browser manualmente quando invece è possibile creare test di integrazione automatici ripetibili. – Fenton

Problemi correlati