✔ 最佳答案
I am sorry, i don't even know what the other answers mean.
Basically, before a software is released to the market for users to use, it needs to go through all three tests. (unit, integration and regression)
When a developer has written some codes. eg. int x = 1, y = x + 5.
then the developer needs to unit-test it first.
unit-test means making sure your code works the way u expect.
in this case, you expect the result y is 6.
so you just needs to unit-test the value of y.
But at this stage, the software isn't ready. it then needs to go to regression test. It is to make sure other part of the software is also working the same as before. Because after your change, the value of y is OK. But other part of codes may depend on y.
eg. 6 = Y + 1.
after ur change, if other part of code has the above statement, then the regression test will fail !
Finally, it goes into integration test. This is normally done by test engineer rather than developer. This is black box testing. Test engineers normally don't know how the code works.. they write the test codes and simply make sure they put in values and all the outcome is expected. It doesn't test so detail like i mentioned b4.
for examples, it may just test a software can be input numbers and letters. and output is displayed correctly. If it will crash etc...
Also, in a large software, you may work in one small part and it will then be integrated to the whole large software. Integration test is done in the whole software level, while your own unit-test and regression test is only done within ur part of code. (eg. in ur own team, or ur project)
參考: self-knowledge. working in a software company.