0

我的应用程序要求我的用户通过一系列表格,以便我可以收集数据并最终在最后对一系列表格中的所有数据进行操作(例如保险申请或类似的东西)。在整个过程中存在一些不容易进行单元测试的要求,我想知道我可以采用哪些好的实践来测试我的 API 以保持我的测试套件 DRY 并促进尽可能简单的测试过程-继续写作。

作为一个我要测试的需求示例:用户在应用程序的一个阶段(地址、dob 等)输入一些关于他们自己的个人元数据。用户有一个仪表板,他们可以随时访问以查看其帐户的基本概览。我需要确保在填写申请表的过程中,他们可以移动到他们的仪表板并查看浮出水面的值。

我可以采用哪些测试模式来保持 DRY?我认为,如果我只是隔离每个功能测试并重新编写整个测试设置以使用户进入填写应用程序的阶段,事情会很简单,但这肯定会减慢测试过程。

4

1 回答 1

0

您可能需要考虑三种常见模式:

第一个在底层应用程序架构之上提供了一个对测试人员友好的界面。

AddressForm addr = application.newAddress();
addr->enterStreet("My Street");
...
Dashboard dashboard = application.dashboard();
test.compare(dashboard.street(), "My Street");

例如,数据驱动的测试可以放在首位,以便轻松通过基于 CSV 文件的各种组合。

如果您的应用程序架构已准备好描述可能的状态和事务,则模型驱动可能是一种选择。可以自动访问模型的各种可能路径,从而避免手动编写所有可能组合的脚本。

于 2018-02-03T19:20:02.437 回答