2016-03-29 18 views
2

Test edilmesi gereken REST web servisim var. DAO sınıfları ve URI aracılığıyla REST yöntemlerini test etmek için RestAssured ile alay etmek için Mockito kullanıyorum. REST servisini Tomcat ile ayrı ayrı çalıştırmadan test etmenin herhangi bir yolu var mı? Ya da test vakalarından önce alaylı sınıflar ile Tomcat üzerinde nasıl çalıştırılır?RestSatışsız test çalışması Tomcat

nasıl RestAssured tomcat gömülü bir örneğini başlatmak ve kullanarak hizmetine yönelik testler maven kullanmak gösteren bir eğiticidir vardır

cevap

3

:

http://www.hascode.com/2011/09/rest-assured-vs-jersey-test-framework-testing-your-restful-web-services/

tek bir kabuk içinde tomcat başlangıç ​​ve testler başka. Bununla birlikte, gömülü bir kabı saydam bir şekilde çeviren jarse testi çerçevesini kullanmanızı şiddetle tavsiye ederim. Bu durumda RestAssured'ı hiç kullanmazsınız, ama jersey test istemcisi. Testleriniz daha hızlı ve daha az yaygara ile çalışacaktır. İyi belgelenmiş: https://jersey.github.io/documentation/latest/test-framework.html. Öğretici ayrıca bu yaklaşımı da gösteriyor, ancak müşterinin doğru bir şekilde oluşturulduğu görünmüyor.

Geçmişte, uygulama sınıfı yöntemlerini doğrudan arayarak da REST kaynaklarını test ettim. Bu, http sorgu parametrelerinin/gövdesinin java yöntemi parametrelerine doğru eşlemesini sınamakla birlikte, genellikle yeterliydi (özellikle de istemci tarafı kodunu kodlarken).

+0

Çalıştı, teşekkürler. Sadece 1 sorun kaldı - Jersey Testi sırasında ExceptionMapper çağrılmıyor. – Justas

+0

Konuyla ilgili başka bir soru açabilirim. –

+1

Zaten çözüldü: http://stackoverflow.com/questions/36308419/jersey-test-exceptionmapper-is-not-invoked/36308529#36308529. Sadece ExceptionMapper'ımı public ResourceConfig configure() dosyasına kaydetmem gerekiyordu. – Justas