aracılığıyla Test API'sine genel bir form gönderebileceğimi doğrulamak için testler yazıyorum.Test Formları, MockMVC
Ayrıca bazı hata ayıklamalarını da ekledim, ancak gerçek bir form tarafından gönderilen verilerin farkettim; (Postacı/angularjs veya ağırlık/e) gibi mockMVC test yaparak Farkı:
MvcResult response = mockMvc
.perform(post("/some/super/secret/url") //
.param("someparam1", "somevalue") //
.param("someparam2", "somevalue") //
.contentType(MediaType.APPLICATION_FORM_URLENCODED) //
.accept(MediaType.APPLICATION_JSON)) //
.andExpect(status().isOk()) //
.andReturn();
yapılandırma tam üretiminde çalışan yapılandırma ve bu aynıdır. Benim önleme gerçek testi (değil mockMVC) içeriği, kaydeder Ancak zaman içerik Ben mockMVC içeriği yazdırırken
Aslında hiçbir içeriğe sahip görünmektedir "someparam1 = birdeğer & vb = encore" gibi biçimlendirilmiş, ama orada olduğunu Params isteminde, GET parametreleri gibi eklendiğini varsayalım.
Bunu düzgün bir şekilde nasıl test edeceğini bilen var mı? FormHttpMessageConverter uygulamasının sunucu içeriğine eklenmiş olmasına rağmen form yazılarımızın Spring tarafından ayrıştırılmamış gibi göründüğü için bu konuya geldim.
config gibi sunucu ve bazı giriş detaylara sonrası gerçek veriler daha net hale getirmek için, daha fazla ayrıntı verebilir misiniz? Sahte hakkında, doğru yaptığınız görünüyor, sahte testi param, gösterdiğiniz posta verilerinin aynı biçimidir. Ayrıca, bahar güvenliği hakkında bir fikir sahibi olup olmadığınızı kontrol edin. Bir sonraki adımı yapmadan önce yaylı güvenlik ile uğraşmak veya giriş yapmak gerekebilir. –
Bunun gibi bir şey kullanmıyoruz, öğrendiğim şey benim örneğimin aslında yanlış olmasıdır. Bu durumda, bazıParam1 ve bazıParam2 bir sorgu parametresi olacaktır, (URL'de). Bu nedenle, form parametrelerini kullanmak istiyorum, URLENCODED. Ancak bu sadece bir model veya bir değer haritası aracılığıyla erişilebilir görünüyor. Bu yüzden bir geçici çözüme ihtiyacımız olacak (bu, ilkbahar olmayan @FormParam için kullanılan tamamen yaylı mvc olmak üzere taşındı). –
Aynı zamanda yayınlanan veriler de, Mvc bölümünün altındaki örneğimde olduğu gibi, & # –