Improve Android testing scripts

Summary:
The goal of this pull request is to make it easier for contributors to run Android tests locally, specifically the unit tests and integration tests. I added a bunch of checks to the local testing scripts that will warn you if your environment is misconfigured, and tell you how to fix it. I also updated the testing docs, so that the regular "Testing" page should be a decent resource to point people to when you are telling them "hey this pull request needs a test." Just Android, though, I haven't gotten to the iOS parts yet.

I also disabled a couple tests that seemed quite flaky while running on a local machine, and don't seem to be providing much value. In particular, the `TestId` test just hangs on my emulator a lot and has been flaky on CI in the past, so I removed about half of its test cases to make the sample app smaller. The testMetions test appears to be dependent on screen size so I commented it out.
Closes https://github.com/facebook/react-native/pull/11442

Differential Revision: D4323569

Pulled By: bestander

fbshipit-source-id: 9c869f3915d5c7cee438615f37986b07ab251f8c
This commit is contained in:
Kevin Lacker
2016-12-13 17:07:13 -08:00
committed by Facebook Github Bot
parent 3e6d762ab7
commit affd5ac681
11 changed files with 249 additions and 93 deletions
@@ -101,7 +101,7 @@ public class TextInputTestCase extends ReactAppInstrumentationTestCase {
/**
* Test that the mentions input has colors displayed correctly.
*/
* Removed for being flaky in open source, December 2016
public void testMetionsInputColors() throws Throwable {
EventDispatcher eventDispatcher =
getReactContext().getNativeModule(UIManagerModule.class).getEventDispatcher();
@@ -202,6 +202,7 @@ public class TextInputTestCase extends ReactAppInstrumentationTestCase {
assertEquals(newText.length() - 25, reactEditText.getText().getSpanStart(spans[0]));
assertEquals(newText.length() - 11, reactEditText.getText().getSpanEnd(spans[0]));
}
*/
@Override
protected ReactInstanceSpecForTest createReactInstanceSpecForTest() {