#java #android #gradle #junit4 #multiline
Вопрос:
Я создал новый пустой проект для Android с Android Studio. Я добавил дополнительную строку в useAppContext()
тест в ExampleInstrumentedTest
классе, которая показывает многострочное сообщение об утверждении:
@RunWith(AndroidJUnit4.class)
public class ExampleInstrumentedTest {
@Test
public void useAppContext() {
// Context of the app under test.
Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
assertEquals("com.example.myapplication", appContext.getPackageName());
Assert.fail("1. Test failedn2. Test failedn3. Test failedn");
}
}
Если я запущу тест в Android Studio, я получу соответствующее сообщение об утверждении:
java.lang.AssertionError: 1. Test failed
2. Test failed
3. Test failed
Но если я запущу его из командной строки, я получу всего две строки сообщения:
$ ./gradlew connectedDebugAndroidTest
com.example.myapplication.ExampleInstrumentedTest > useAppContext[SM-G950U - 9] FAILED
java.lang.AssertionError: 1. Test failed
2. Test failed
> Task :app:connectedDebugAndroidTest FAILED
Платформа/Версии/зависимости:
MacOS 11.3.1
Android Studio 4.2.1
classpath "com.android.tools.build:gradle:4.2.1"
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
Как я могу показать все строки в командной строке?
Комментарии:
1.
./gradlew connectedDebugAndroidTest --console plain
Помогает ли это вообще?2. Я получил тот же результат с
--console plain
:3. Test failed
на консоли нет 🙁3. Я думаю, что это полезно 😉 github.com/getodk/collect/issues/2550
4. Я не вижу, как это может помочь