As you probably realized by now, at job development, it's a
lot about testing. So there is a lot of emphasis on
testing. Testing first, te, testing early. So that's the reason why
I also want to discuss what is the testing strategy in XP.
So first of all what is the basic principle? The basic
principle is that testing is Coded confidence. You write your test
cases and then you can run them anytime you want. And
if they pass, they'll give you confidence that your code is behaving
the way it's expected. If they don't pass on the other
hand, you'll know that there's something to fix. Another important concept is
that test might be isolated and automated. So both the running and
the checking of the tests has to be automated for all of
this to work. And there are two types of tests. The first
type of test is unit tests, that are created by the programmers,
and they're created by looking at the task cards. The task cards
describe what they implemented, functionality should
do, and therefore allows the developers.
The right test that can test this functionality. That can
check that the code's correctly implemented functionality. And as we
said, you should really test every meaninful feature. So, for
example, you should test every meaningful method in your classes.
You should put specific attention to possibly complex implementations, special
cases or specific problems that you might think of. while
reading the task cards. In some cases, when you do
refactoring, you might also want to write test cases specific
to that refactoring. But we'll say more about that. So this
was for the first kind of tests that are involved in
the, in the XP process. The second kind of tests are
the system tests, also called acceptance tests. And those tests involve
the customer. So basically what happens is that the customer provides
the test cases for their stores and then the development team
transforms those into actual automated tests. So these are tests created
by the developers. They run very quickly and they run very frequently.
These are tests developed with the help, with the
involvement of the customer they run longer. And run less
frequently, they run every time the system is integrated.
According to the cycle we saw a few minutes ago.