Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror

Comment My 0.02 VEB (Score 1) 248

I do not think a single approach is fit for every aspect of software testing, as you well say one can consider at least user interface and business logic to be two separate independent items (and it is a good programming technique to keep them as separate as possible as well.) anyhow, I certainly beleive programming bussines logic is better tested via automated software, since the rules for it's input and responses are well defined mathematical and logical rules that can be very thoroughly and quickly analized via software catching errors in the infinitessimal that the human eye would just not catch at first glance.

Currently I do not use any pre-made testing software for my development projects and I would do well to find one, what I do is to give the bussiness rules and the api or ways to call my program to a friend programmer to code a quick test program to try different valid and invalid values plus border values (the frontier between valid and invalid) and then check if the result is correct.
I give this to an indipendant programer because if any flawed logic on my part (other than typing bugs) causes erroneous data it is very possible I'll apply the same flawed logic to test the code and thus consider a really invalid response as a valid one, using a different codder to come with the test code should apply some safeguard to this situation.

User interfaces themselves are another totally different aspect.. there is a data correctness aspect which can be tested automatically or by a codder who understands the system in which you'd basically test if the data entered on the UI is passed correctly to the system, and if the data returned by the system is displayed correctly by the UI. But the UI also has very different aspects which are ergonomics, and ergonomics can only be tested by humans, and by the final users of the system per se. As programmers we do not always create software for programmers (in fact less than 5% of my projects are ever intended to be used by programmers), for the rest we create software for administrators, HR, ITs, Engineers, Managers, Cashiers, etc etc etc.. the work flow and tought process of different professions are different as well, also as non experts on the area of application there are details either small or huge we can miss, the order of work might differ from what is needed, and also responses could come in places where they are not usefull. For that it is always better to have a small group of end users, prefferably ones you can trust in (beleive me otherwise it can QUICKLY turn into hell for you and them) to test the system and come back to you with any suggerences and errors they find.. also more people on the system produce a higer chance of finding mistakes (misplaced items, misspellings, etc), than a single person would miss (man hours count a lot for a large system testing.).

Slashdot Top Deals

The typical page layout program is nothing more than an electronic light table for cutting and pasting documents.

Working...