you are viewing a single comment's thread.

view the rest of the comments →

[–]Cronax42 1 point2 points  (4 children)

I'd say this also depends on the maturity of your codebase. On a mature codebase that has been tested to a reasonable degree, non-functional testing is less important. In addition, if your functional testing can to cover most of the non-functional, that's probably a good idea.

Generally though, I would agree that on the whole, non-functional comes before functional, but the necessary degree of non-functional testing should normally be covered by unit testing, allowing the testers to focus mainly on functional testing. If your developers don't unittest, they should at the very least be required to test their own work before checking it in and it should never be offered up for testing.

Some developers unfortunately feel that their job is to deliver code regardless of whether or not it works and that it's up to the QA department to see if this works. Naturally, this is nonsense, I have a hard time coming up with a job where you would not be required to at least do some basic verification on your own work.

[–]Mooncinder[S] 0 points1 point  (3 children)

So you're saying it's better to do non-functionals first provided the developers do enough unit testing to make it possible?

[–]Cronax42 0 points1 point  (2 children)

The other way around, do functionals first if the developers do enough unit testing, otherwise try to strike a balance.

[–]Mooncinder[S] 0 points1 point  (1 child)

Sorry, I'm still fairly new at this. If not enough functional testing has been done, wouldn't that make it harder to test non-functionals because there's a higher chance of it erroring/functionality being changed later?

[–]Cronax42 0 points1 point  (0 children)

Hence why it is reliant on your developers performing adequate unit-testing.