代码之家  ›  专栏  ›  技术社区  ›  Ufkoku

AndroidX片段的机器人分子测量

  •  5
  • Ufkoku  · 技术社区  · 6 年前

    如何用机器人分子测试AndroidX片段?

    testImplementation "org.robolectric:shadows-supportv4:4.0-alpha-3" 依赖项并尝试使用以下代码:

    val controller = SupportFragmentController.setupFragment(
                TestableFragment.buildFragment(DATA),
                TestableFragmentHolderActivity::class.java)
    

    TestableFragment androidx.fragment.app.Fragment ,和 TestableFragmentHolderActivity androidx.appcompat.app.AppCompatActivity

    但我在测试中发现一个错误:

    java.lang.NoSuchMethodError错误: org.roblectric.shadows公司.support.v4.Suppo版本rtFragmentController.setupFragment(Landroidx/fragment/app/fragment;Ljava/lang/Class;)Landroidx/fragment/app/fragment;

    3 回复  |  直到 6 年前
        1
  •  6
  •   fo2rist    6 年前

    the official doc 你需要创建一个 FragmentScenario

    val fragmentScenario = launchFragmentInContainer<MyFragment>()
    

    然后像你平常喝浓缩咖啡一样测试

    onView(withId(R.id.text)).check(matches(withText("Hello World!")))
    
        2
  •  1
  •   Armali    6 年前

    请参考此git版本: https://github.com/robolectric/robolectric/issues/3985 . AndroidX片段的新API将很快发布。

    推荐文章