We are developing Android application and the developers feel it is difficult for us to write integration/unit tests. I read majority in Test cases in source code saying that test code should not be included in software application. However, the developers think it is easier to write unit/integration tests inside the application. He could input some magic number in non-production version of the application and the application starts to perform unit/integration tests, not just debug code that only set-up preconditions.
I know such test would increase size of application. It is disabled in production version so it is safe from being used by user but it also means we cannot test our production version. Is there any other reason that we should not write unit/integration tests within our application but write tests that run independently in test instrument/test runner?