【发布时间】:2017-09-01 02:58:27
【问题描述】:
Google 最近发布了 Android 测试支持库 1.0。看了overview之后,我对Android Test Orchestrator有点困惑。
它说
通常,AndroidJUnitRunner 在同一个检测进程中运行所有测试,这可能会导致许多问题。
您能解释一下使用相同的检测过程会导致哪些类型的问题吗?
如果一个测试崩溃,它会阻止测试套件的其余部分运行
根据我的经验,一个测试崩溃不会阻止其他测试用例的运行。请指出我在这里误解了什么?
来自Android Testing Orchestrator developer guide,
为了完整起见,Android Test Orchestrator 在每次测试后运行 pm clear。
所以 Android Test Orchestrator 会在每次测试后运行 pm clear [test_package_name],对吗?
通过我的测试,pm clear [app_package_name] 不会在每次测试后执行。这意味着被测应用程序的数据不会被清除。所以测试用例可能仍然相互依赖。例如:
- 测试用例 A 存储 SharedPreference 键值
- 在测试用例A之后运行的测试用例B可以读出测试用例A存储的值
总的来说,经过一些试验,我没有发现 Android Test Orchestrator 有任何优势。有人可以帮助解决我的困惑吗?谢谢。
【问题讨论】:
标签: android testing android-espresso