【发布时间】:2020-04-07 15:00:11
【问题描述】:
我在 Android 中尝试使用 FragmentScenario 时遇到此错误
error: package androidx.fragment.app.testing does not exist
import androidx.fragment.app.testing.FragmentScenario;
^
这是我的简单单元测试示例:
package com.example.myapplication;
import androidx.fragment.app.testing.FragmentScenario;
import android.os.Build;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.annotation.Config;
@RunWith(AndroidJUnit4.class)
@Config(manifest = Config.NONE, sdk = Build.VERSION_CODES.P)
public class MainActivityTest {
@Test
public void testFragmentScenario() {
FragmentScenario<BlankFragment> scenario = FragmentScenario.launchInContainer(BlankFragment.class);
}
}
build.gradle(app):
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
def test_version = '1.2.0'
def fragment_version = '1.2.4'
debugImplementation "androidx.fragment:fragment-testing:$fragment_version"
testImplementation "androidx.test:core:$test_version"
testImplementation 'androidx.test.ext:junit:1.1.1'
testImplementation "androidx.test:runner:$test_version"
testImplementation "androidx.test:rules:$test_version"
testImplementation 'org.robolectric:robolectric:4.3'
}
我错过了什么,因为几个月前这段代码有效。
【问题讨论】:
-
你解决过这个问题吗?
-
就其价值而言,我的依赖项与您的几乎相同,
androidx.fragment.app.testing.FragmentScenario导入为我解决了。您可能只需要将您的项目与 Gradle 文件重新同步? -
嗨@StealthRabbi 抱歉回复晚了。从那以后我没有尝试过,然后继续做其他事情。让我尽快尝试并在此处更新。
标签: android android-junit android-fragmentscenario