... The main constraints I see is whether you're testing before you write the code (TDD) or after, and whether you can change the code you're testing. Assuming...
... the ... and ... So I think I get your position now. You focus on testing behavior. Where this gets complex, because information is currently stored but not...
A friend recently asked me this for advice on "How to..." He has a test fixture say TestClassA. It has n test methods, etc.. Now this ClassA can work with lets...
Thanks guys, great advice as always. Kevin I agree with the (thin UI + tested-to-death model) approach, however looking at the current implementation of this...
... No. I *start* with an automated end-to-end test of the desired *system* behaviour that interacts with the boundaries of the system only (client GUIs,...
Hi Gishu, I think Kelly A experimented with something like this, and it may even be uploaded to the group file section. Otherwise, this sounds like a case for...
I'm getting too old for this at 27. <sheepish> OOPs for gods sake. Pull up the common stuff, drive down the specialities. Thanks Kim, this should work.. --...
I ran across this little self contained example code. It took me about 40 minutes to extract out dependencies and come up with my own domain objects. I was...
In most cases these were handrolled tools, so I just used things like string differences for HTML rendering, and compared byte-for-byte within the image files...
Agreed. I would also throw in at least one exception test early since it can flush out design issues that won't come up with the happy path code. ... Steve...
... See my IterativeTest Extension Addin at: http://www.nunit.org/index.php?p=addins Let me know if that works for you... If you have four fixed data sources,...
... <snip> ... Perhaps the term "code without regression tests" is a bit easier, and more accurate, than co-opting an existing, well understood term? Many ...
... Scott, I remember thinking that Micheal was a little "cute" in his redefinition of "legacy code", but it sure is a lot less to say than "code without...
... users ... having a ... Could be. In this case the new definition has already been widely seen and, it seems (since there hasn't been a massive outcry), ...
... My impression from the rest of the book is that he accepts but doesn't embrace the notion of automated tests in other contexts than TDD. Legacy code (in...
... Michael clearly defined what he meant by the term *in the context of his book* and, as far as I understood the book, didn't imply a meaning to the term in...
... Nat, I think this is the most cogent thing said on this topic yet. "Life is pain, Highness. Anyone who says differently is selling something." -Westley -...
Hi Nat, Steve and Colin, This has been a most informative exchange. Nat and Steve: Do/Will you discuss this in your book? Cheers, Rick ... [Non-text portions...
... Hmmm.. What I would like is a link to a page where I can see it in action before I download the NUnit addin. ... I've seen RowTest before and I know for a...
... Have you considered posting your argument onto a COBOL list (or similar) and see what they have to say? I suspect that you'll discover that it's not a...
Please remember that Michael was writing a book, "Working Effectively with Legacy Code". Given the book title, it's then incumbent on an author to define what...
Hi, Scott, ... For my money, in the Agile community, Michael Feathers has successfully defined "legacy". As John notes, it was his responsibility to do so,...
Not directly, but this is how we work and we're including a long worked example. S [sitting next to Nat] ... Steve Freeman http://www.mockobjects.com Winner of...
Why Feather's definition works: Legacy means "that which is left behind by others who are now gone". If we substitute others="doc-centric processes" then...
... If that gets complex, I refactor the code to make it simpler to ... Sorry for taking to long to fully get it, its very different to the way we work which...