Özgür Özvarış

Bir yazılımcının kırık dökük dünyası

Test Automation tool

clock Ağustos 18, 2014 18:17 by author OzgurOzvaris

Merhaba,

Geçen gün güzel bir sunuma katıldım. Test automation tollardan özellikle şu ikisi aklımda kaldı sizlerle de paylaşayım.

jmeter

http://jmeter.apache.org/

Bir ara bende stress testi için bu tool'u kullanmış ve windows ortamına uyarlamıştım. Konu ile ilgili makalem http://www.ozgurozvaris.com/post/2014/02/14/Jmeter.aspx

Bir diğer tool'da

Selenium

http://www.seleniumhq.org/

atrium isimle bir ara programlar çok güzel android testleride yapabiliyormuş. Adroid sdk emulatorunun çok yavaş olduğu ile ilgili bir ayrındı öğrendim bunun için bir intel driver kuruluyormuş.

Bende uyanan en önemli intiba. Test otomasyonu ciddi bir işmiş dedim.

İyi çalışmalar.

 



.Net popüler Dependecy Injection Tools

clock Ağustos 18, 2014 18:10 by author OzgurOzvaris

Merhaba,

Son json size limit problemi ile birlikte .Net dünyasında ki popüler bir kaç dependecy injection tool'u anmak gerektiğini düşündüm.

Ninjet

http://www.ninject.org/

Unitiy

http://msdn.microsoft.com/en-us/library/ff647202.aspx

http://blogs.unity3d.com/2014/05/07/dependency-injection-and-abstractions/

https://unity.codeplex.com/

Stracture Map

http://docs.structuremap.net/

Bu da gogole biraz bakınırken gördüğüm java dünyası için güzel bir makale :)

Inversion of Control Containers and the Dependency Injection pattern

 



MVC Json size limit

clock Ağustos 18, 2014 17:40 by author OzgurOzvaris

Merhaba Arkadaşlar,

Kaynaklar :

Web.config jsonSerialization maxJsonLength ignored

ASP.Net MVC4 - Setting the Default JSON Serializer

Using JSON.net as default JSON serializer in ASP.NET MVC 3 - Is it possible?

Using StructureMap to inject Controller and Attribute Dependencies *****

Bu günkü konumuz yüksek size'lı bir json datasını client tarafında göndermeye çalıştığınızda aldığınız 500 - Internal Server Error ile ilgili. Kaynaklardan gördüğünüz gibi çözmek biraz zorladı.

Event Viewer'da Application Errorlara baktığınızda hata açık olarak şu şekilde yazılıyor

Error during serialization or deserialization using the JSON JavaScriptSerializer. 
The length of the string exceeds the value set on the maxJsonLength property

Yani sorunun JavaScriptSerializer'ın size limiti ile olduğu çok açık. Ancak bu limit'i nasıl kaldırabilceğimiz ile ilgili türlü türlü bilgilerden doğru bilgiye uğraşmak kolay olmadı. Bazıları sorunun browser limitlerinden kaynaklandığını söylemiş, bazıları web config'e ekkleyeceğini bazı taglar ve limit değerleri aşılabileceğini söylemiş vs. Bende ne yazıkki bunlardan sadece kod tarafından MaxJsonLength ile ilgili değeri set etmeliniz tavsiyesi bir ışık oldu.

Ancak jsonresult dönen bir class da bu değeri set etmek verilen örnekteki kadar kolay değil öncelikle json result'ı customize etmek gerekti. Customize ettiğim jason result'ı handle edebilmesi için controllerInvoker class'ına dependecy injection yapmak gerek ti tabi bu işler ağızdan çıktığı kadar kolay değil. Örneğin ben dependecy injection tool olarak stracture map kullanıyorum Stracturemap ile sorunsuz olarak controller classlarına default parametreler geçebiliyorum ancak bu sefer daha derinlere bir injection yapmak gerekli bunun için daha ileri bir kodlama gerekiyor.

Kaynakları inceldeğinizde ExtensibleActionInvoker ile ilgili örnek (**** eklediğim) stracture map üzerine olduğu için birebir benim sorunumu çözdü.  Sadece nuget ile  Reactive Extension (RX) tool u kurdum. Yeni versiyonlarda run komutu gitmiş yerine ForEach gelmiş onu çözmek için de

filters.ToObservable().ForEach

komutu kullanmak gerekti. Bu vesile ile daha önce projemde kullandığım ControllerFactory çok daha güzel bir yapıya kavuştu. Bu yapıda örnekte anlatıldığı üzere ihtiyaç olursa çok daha orjinal attributelar kullanabileceğim.

İyi çalışmalar.



Hakkımızda  AboneOl 

Blog Yayınımıza Hoşgeldiniz.

Month List

RecentPosts

Sign In