簡體   English   中英

使用Robolectric在兩個(或更多)Android版本上運行Android測試

[英]Run Android test on two (or more) Android versions with Robolectric

我正在研究包含兩個Android版本之間區別的Android代碼。

我編寫了測試以運行代碼。 我正在使用Robolectric。

我找到了一個SO答案,說如何配置Robolectric用於運行測試的版本:
Robolectric是否支持API級別?
但是那樣,我將不得不復制測試並使用不同的批注(或者將測試代碼包含在私有方法中,並創建兩個調用私有方法的新公共測試方法-但是我已經有數百個測試,因此這將是很多工作)。

有沒有辦法告訴Robolectric運行兩次測試,每次運行使用不同的Android版本?

我知道您的答案已於一年前發布,但我遇到了同樣的問題,並且在網上找不到任何答案。

我發現了Robolectric 3.0的解決方案:您可以使用類MultiApiRobolectricTestRunner 例如 :

@RunWith(MultiApiRobolectricTestRunner.class)
@Config(constants = BuildConfig.class, manifest=Config.NONE, sdk = {16, 19, 21})
public class MyTestCase extends TestCase {

    @Test
    public void test1ToRunOnMultipleApis(){
        // My test
    }
}

方法test1ToRunOnMultipleApis將被測試3次:使用API test1ToRunOnMultipleApis和21。

希望這可以幫助;)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM