> Having said that, TDD does work "best" for new development, and many VFP
> devs are not doing a ton of apps from scratch which is why it may not have
> caught on. It also works best with logic that's not buried in the UI, and
> unfortunately a lot of us buried it there (forgive me father). 

We have used FoxUnit for our FoxPro DOS based application. That program was 
certainly not written with unit tests or even classes in mind. But even a 
procedure with private variables can be a testable unit if you design the 
interface carefully.

It doesn't make sense to retrospectively create unit test for an existing 
application, I agree. However, when you modify existing code it's often 
possible to move the parts that you need to change out of the SCX Click or 
whatever method into a separate class. There is no need to do this all at once, 
just when you need to make changes to code anyway.

When code uses functions like MESSAGEBOX(), etc. you can replace those with a 
simple messagebox or dialog class (such as the one in INTL) and then in your 
test mock this class. Various tests can then cover multiple paths through the 
code depending on a simulated choice a user made. You can also assert that 
certain messages are shown to the user by making a call an expectation in 
foxmock and then verify those afterwards.

-- 
Christof

--- StripMime Report -- processed MIME parts ---
multipart/alternative
  text/plain (text body -- kept)
  text/html
---

_______________________________________________
Post Messages to: ProFox@leafe.com
Subscription Maintenance: https://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: https://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: https://leafe.com/archives
This message: 
https://leafe.com/archives/byMID/3c5b4138-b249-4929-a5f3-13088009c...@wollenhaupt.org
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.

Reply via email to