AndroidX浓缩咖啡测试:未找到测试,测试套件为空

AndroidX浓缩咖啡测试:未找到测试,测试套件为空,android,android-espresso,android-testing,androidx,Android,Android Espresso,Android Testing,Androidx,我正在尝试运行src/androidTest,这是我的Android项目中的仪器测试,该项目使用AndroidX库,但我得到未找到任何测试错误和空测试套件日志 我已经检查了所有使用AndroidX库的样本和文档,它们也在做同样的工作 我尝试根据以下链接设置编辑配置,但仍然没有成功 我做错什么了吗?或者遗漏任何步骤 请检查此图像是否有错误 MainActivityTest.javacode: import static androidx.test.espresso.Espresso.onView;

我正在尝试运行src/androidTest,这是我的Android项目中的仪器测试,该项目使用AndroidX库,但我得到
未找到任何测试
错误和
空测试套件
日志

我已经检查了所有使用AndroidX库的样本和文档,它们也在做同样的工作

我尝试根据以下链接设置
编辑配置
,但仍然没有成功

我做错什么了吗?或者遗漏任何步骤

请检查此图像是否有错误

MainActivityTest.java
code:

import static androidx.test.espresso.Espresso.onView;
import static androidx.test.espresso.action.ViewActions.typeText;
import static androidx.test.espresso.assertion.ViewAssertions.matches;
import static androidx.test.espresso.matcher.ViewMatchers.isDisplayed;
import static androidx.test.espresso.matcher.ViewMatchers.withId;
import static androidx.test.espresso.matcher.ViewMatchers.withText;

@RunWith(AndroidJUnit4.class)
@LargeTest
public class MainActivityTest {

   @Rule
   ActivityTestRule mActivityRule = new ActivityTestRule<>(MainActivity.class, false, false);

   @Test
   public void checkViewsVisibility() {
     // verify the visibility of recycler view on screen
     onView(withId(R.id.record_list_rv)).check(matches(isDisplayed()));

     // verify the visibility of progressbar on screen
     onView(withId(R.id.progressBar)).check(matches(isDisplayed()));

     // verify the visibility of no data TextView on screen By default it should be GONE
     onView(withId(R.id.no_data_tv)).check(matches(isDisplayed()));

     onView(withId(R.id.no_data_tv)).check(matches(withText("No Data")));

     onView(withId(R.id.no_data_tv)).perform(typeText("No Data"));
   }
}

您的defaultConfig中有一个输入错误。可能是:

testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

对我来说,在确保所有依赖项都可用后,将targetSdk从30版本更改为更低版本解决了我的问题。

在我的情况下,我也很难运行UI测试。检查(并尝试)类似主题中的大部分内容对我来说都没有结果。最后,我通过gradle命令运行了检测测试:

gradlew connectedProdDebugAndroidTest

或者(如果要运行单个测试,或者在单个类中运行测试)

gradlew connectedProdDebugAndroidTest-Pandroid.TestInstrumentRunneArguments.class={package.class}{methodName}


在通过命令运行测试之后,不知何故,可以通过专用按钮运行测试。

相关问题:在我创建了一个自定义的
testInstrumentationRunner
,将其移动到一个新包中,但忘记了更新
build.gradle
文件中的值的情况下,纠正键入错误也是解决方案。不幸的是,Android Studio和
/gradlew:app:connectedAndroidTest
都没有告诉我它找不到跑步者,他们只是给出了
没有找到测试的错误消息。
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"