whitbox testing that is related to structual knowledge whereas Blackbox Testing that is related to funtional knowledge
In whitebox testing,knowledge of the code is required while in blackbox testing no knowledge of code is required and with the little knowledge of the code thats called 'greybox'testing
The major contradiction is that1) Generally black box testing will begin early in the software development i.e. in requirement gathering phase itself. But for white box testing approach one has to wait for the designing has to complete.2)We can use black testing strategy almost any size either it may be small or large.But white box testing will be effective only for small lines of codes or piece of codes.3) In white box testing we can not test Performance of the application.But in Black box testing we can do it.4 ) In general we have to write large quantity of test cases for whitebox. But in black box its a selcection of sample test cases.