【问题标题】:How can one write an Integration Test that requires an Android Context?如何编写需要 Android 上下文的集成测试?
【发布时间】:2016-12-19 22:17:23
【问题描述】:

例如,测试图像文件的输入/输出。要创建文件,使用以下代码(摘要):

 File storageDir = getExternalFilesDir(Environment.DIRECTORY_PICTURES);
 File image = File.createTempFile("tempImage",".jpg",storageDir);
 mCurrentPhotoPath = image.getAbsolutePath();
 mCurrentPhotoURI = FileProvider.getUriForFile(this,"com.example.android.fileprovider",image);
 File photoFile = image;

当我尝试使用此代码编写集成测试来创建文件时,getExternalFilesDirthis(这是一个上下文)存在问题。我如何在没有要通过的活动或上下文的情况下进行有效测试?我可以生成一个吗?

【问题讨论】:

  • 你在使用 Mockito 吗? stackoverflow.com/questions/34063848/…
  • 我不是 - Android Studio - 如果这是有用的信息。
  • 那是一个 IDE。你可以使用 Mockito 测试你的应用程序——这是我的问题——你有什么测试框架?
  • 没有测试框架——你有关于它如何集成/工作的总结吗?或者我应该只是谷歌它并做一些研究?
  • 模拟测试与集成测试不同,所以我可能会引导你走错路

标签: java android integration-testing


【解决方案1】:

在仪器测试中,InstrumentationRegistry.getTargetContext() 为正在测试的包返回 Context

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-06
    • 1970-01-01
    • 2013-07-02
    • 1970-01-01
    • 2016-12-24
    • 1970-01-01
    • 2020-01-16
    • 1970-01-01
    相关资源
    最近更新 更多