Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>I would suggest writing <strong>tests</strong> around certain areas. I'm not a massive fan of unit tests - although I end up writing quite a few of them. I prefer system tests that test parts of the system - so from domain down, service down, presenter down etc not neccesarily the whole system but parts of it. If you're looking for efficiency then these tests can run a StopWatch around the code and fail if it takes too long.</p> <p>Another nice thing to do is run standard tasks through <strong>ANTs Profiler</strong> from RedGate or <strong>dotTrace</strong> from Jetbrains. It'll tell you what's taking the time and how many times it's been run, meaning you can see where can be optimised/cached.</p> <p>If you're using NHibernate then <strong>NHProf</strong> is great (or I think Ayende has now released the <strong>UberProf</strong> which covers more DB access strategies.) This will warn you of any stupid DB access going on. Failing this just using the <strong>SQL Server profiler</strong> might show you requesting the same data again and again but will require more effort filtering out the rubbish. If you do end up using that then you can save it to a DB table which you can then query in a more intelligent way.</p> <p>If you're looking for robustness, a good thing to use is a logging strategy - catch all exceptions and log them. This is easy enough to set up using <strong>log4net</strong>. Also log if you hit certain points that you're slightly suspicious of. Then have this running into a server (I use <strong>kiwi syslog server</strong> which is easy to set up and quite powerful) which can write to a DB and you can run analysis on the results. I would recommend against the ADO.NET appender for log4net as it is not async and so will slow your app down.</p> <p>Finally depending on what the app is if you're really really keen on spending some time on testing its health you can use <strong>WaTIN</strong> or the <strong>Winforms equivalent</strong> to test the front end. This could even be a prolonged test watching the memory/processor usage of the application while it's being used. If you're not that worried then the <strong>windows performance analyser</strong> will allow you to look at various aspects of the application while you use it. Always useful but you have to really poke around to get the useful metrics.</p> <p>Hope this helps.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload