我正在为一个依赖于API的Flutter应用程序工作。我们正在考虑一种测试策略,并希望知道哪种方法是最好的。
根据他们的文档(https://flutter.dev/docs/testing),他们有三个测试级别:
- 单元测试 - Widget测试 - 集成测试(Pump widgets新方法) - 集成测试(Flutter driver旧方法)
由于我们的资源有限,我们想知道我们应该首先选择什么。因为直到现在,对测试只做了很少的努力。
我们的情况如下:
- 单元测试(覆盖率50%) - Widget测试(覆盖率0%) - 集成测试(Pump widgets新方法 - 覆盖率0%) - 集成测试(Flutter driver旧方法 - 仅涵盖少量测试场景,主要流程) - API测试:单元测试和功能测试覆盖率均为0%
我们没有使用任何测试自动化框架,例如WebdriverIO + Appium。
我们想知道在每个Flutter测试类别中应该投入多少精力,关于Flutter集成测试,仅使用新方法(Pumping every widget)进行集成测试是否有意义,或者我们还需要使用集成测试(Flutter driver old way)?仅依靠使用泵装小部件方法的集成测试并不能让我们感到非常自信。
我们正在考虑一些选项:
1. 强大的API覆盖率(单元测试和功能测试)+强大的Flutter单元测试覆盖率+少量使用flutter driver方法的集成测试 2. 测试金字塔方法:大量的单元测试+较少数量的使用pump widget新方法的集成测试、API测试和小部件测试+较少数量的E2E测试(可能使用集成测试使用flutter driver方法或外部自动化框架)和手动测试 3. 只进行单元测试+小部件测试+使用新方法泵送小部件的集成测试,尝试在这三个领域都达到100%的覆盖率。
我们还认为,以新方法(泵送小部件)维护集成测试有点耗时,因为您需要对应用程序的视图和内部有很好的了解。这对于一个没有太多Flutter开发经验的QA自动化人员来说可能是具有挑战性的。
我应该首先涵盖哪些Flutter自动化测试类别,单元测试、小部件测试还是集成测试?我是否应该使用外部自动化框架,如WebdriverIO + Appium?
根据他们的文档(https://flutter.dev/docs/testing),他们有三个测试级别:
- 单元测试 - Widget测试 - 集成测试(Pump widgets新方法) - 集成测试(Flutter driver旧方法)
由于我们的资源有限,我们想知道我们应该首先选择什么。因为直到现在,对测试只做了很少的努力。
我们的情况如下:
- 单元测试(覆盖率50%) - Widget测试(覆盖率0%) - 集成测试(Pump widgets新方法 - 覆盖率0%) - 集成测试(Flutter driver旧方法 - 仅涵盖少量测试场景,主要流程) - API测试:单元测试和功能测试覆盖率均为0%
我们没有使用任何测试自动化框架,例如WebdriverIO + Appium。
我们想知道在每个Flutter测试类别中应该投入多少精力,关于Flutter集成测试,仅使用新方法(Pumping every widget)进行集成测试是否有意义,或者我们还需要使用集成测试(Flutter driver old way)?仅依靠使用泵装小部件方法的集成测试并不能让我们感到非常自信。
我们正在考虑一些选项:
1. 强大的API覆盖率(单元测试和功能测试)+强大的Flutter单元测试覆盖率+少量使用flutter driver方法的集成测试 2. 测试金字塔方法:大量的单元测试+较少数量的使用pump widget新方法的集成测试、API测试和小部件测试+较少数量的E2E测试(可能使用集成测试使用flutter driver方法或外部自动化框架)和手动测试 3. 只进行单元测试+小部件测试+使用新方法泵送小部件的集成测试,尝试在这三个领域都达到100%的覆盖率。
我们还认为,以新方法(泵送小部件)维护集成测试有点耗时,因为您需要对应用程序的视图和内部有很好的了解。这对于一个没有太多Flutter开发经验的QA自动化人员来说可能是具有挑战性的。
我应该首先涵盖哪些Flutter自动化测试类别,单元测试、小部件测试还是集成测试?我是否应该使用外部自动化框架,如WebdriverIO + Appium?