[fenix] No issue: remove unnecessary robolectric annotations.
Theoretically, this should marginally decrease the duration of our unit test suite. In my testing, for 1 iteration each (i.e. noise is very possible), the duration changed from 9m 32s to 8m 21s – a 71s improvement. --- To identify tests that were running with robolectric that didn't need to be, I removed the @RunWith(FenixRobo... from all relevant files: sed -i '' "/@RunWith(FenixRobolectric/d" app/src/test/**/*.kt I ran the tests and discovered which ones failed from the Classes tab of the index.html test result file. Something like: tests = document.querySelectorAll('table')[3].querySelectorAll('tr'); failureElements = tests.querySelectorAll('.failures'); // TODO: extract the test names Then I copied these results to a text file and compared them to all the files that had robolectric test runners to figure out which ones still pass: comm -1 -2 failures.txt changed_files.txt > robolectric_not_needed.txt And undid the changes to the failing files: for i in $(cat robolectric_not_needed.txt); do git checkout $i; done Then I removed the import statements on those files: for i in $(cut changed_files.txt); do sed -i '' "/import.*RunWith/d" $i; done for i in $(cat changed_files.txt); do sed -i '' "/import.*RobolectricTestRunner/d" $i; donepull/600/head
parent
9342bf102d
commit
b8f673380f
Loading…
Reference in New Issue