From the free and proven IoC containers/frameworks, please let me know which ones you prefer to use and what makes you choose that one instead of the others?
- Castle Windsor – Castle Project (http://docs.castleproject.org/Windsor.MainPage.ashx)
- Ninject (http://www.ninject.org/)
- StructureMap (http://docs.structuremap.net/)
Thanks in advance for your inputs.
After getting frustrated with the fact that Entity Framework and NHibernate does not resolve my needs, I am writing my own ORM tool to finalize one very important part of enterprise architecture.
Here are the features that are included (hope to finish by tomorrow)
- Mutliple entity classes (one per each)
- Single Data Provider Class
- One Interface IDataProvider
- One Class which inherits I[Model]DataProvider (SQL[Model]DataProvider)
- [Model] to be renamed by the model name provided
- One mocked class using moq framework (http://code.google.com/p/moq/)
- SQL[Model]DataProvider will also implement retry logic in case of certain cases such as
- Connection Timeout etc.
- In a nutshell the following error codes : -1,-2,2,53,1222,1205
- Will obviously generate related stored procedures and utilize them
- Entities will be able to track simultaneous changes and will be able to throw exception if data changed before update!
- Entities will implement [DataContract] & [DataMember] so that usage in WCF will be a lot easy
- As you may see from here generated codes will implement Abstract Factory (Provider) design pattern and possibility of Singleton is also there.
So far, the best tool I’ve seen is Selenium (with Firefox recorder of course) for functional testing.
It covers most things that one may want to achieve.
Here are the points where Selenium (http://seleniumhq.org/) shall be used
- Functional testing of web pages (not only web of course)
- Validation content on the page
- Source code (rendered of course)
- And above things by specifying where you expect it
- You don’t need to code for that, you just specify those using the recorder tool (it does it for you)
- Run complete tests as unit test
- by default it is Nunit but it is not a big deal to convert into MSTest format
- Just imaging adding function UI test code coverage results into all other unit test coverage results
- Regression testing
- All test scenarios combined
- All browsers and versions for all scenarios
- Simply stop doing manual test please, it is very easy to do with this tool (not limited to .NET etc.)
- Performance testing
- Please note, selenium is browser based tool so it will open up a browser
- Before you reach to the target servers limits you will reach executing machines limits because of having so many browser windows opened by selenium test
- I would say don’t go for this because
- Most of those can be from other vendors than your own
- It is extremely difficult to manage that (long story to explain)
- What would you get in the end?
- You can try this but only if you’ve mastered your actual code with more than 90% coverage