0

我想知道你们是否有类似模块化应用程序的自动化 UI 测试经验。整个应用程序就像所有典型的 CRM 相关应用程序一样,根据您的个人客户需求,您只需将一些可用模块(之前已预定义)组合在一起,以提供所有必要的功能。

如果将所有这些模块放在一起构建“静态”应用程序,那么我们可以以一种非常简单的方式对其进行测试,只需遍历所有定义的测试类,因为我们会知道所有这些模块之间的行为/交互。

但是如果我们需要测试应用程序的行为,同时将它的一些随机部分/模块放在一起以检查它们是否运行良好,我们将需要一些其他方法。

如果有解决方案,一些推荐的架构模式或任何可以帮助我执行此类自动化测试的东西(使用即 Selenium WebDriver)?或者这种测试甚至可以使用 WebDriver 库来执行?

如果您能分享您在这方面的任何想法和经验,我将不胜感激。

4

2 回答 2

2

我在那个领域工作并且有类似的情况,这是我从中学到的:

  1. 如果可以,请避免创建 UI 测试。UI 测试旨在测试您的应用程序的外观,仅此而已。业务逻辑(例如当我更改该设置时,显示的数据应该更改等)应该在更容易实现的单元测试中进行测试。在集成测试中应该尽可能多地覆盖模块之间的交互。
  2. 如果您仍有需要测试的功能,请创建一个配置文件,其中包含有关哪些客户启用了哪些模块的信息。在您的测试中,阅读该配置,如果不应该运行测试,请中止它。
于 2018-09-06T11:44:56.663 回答
0

如果一些进一步的研究人员会为此案例寻找专有技术解决方案,我们可以为每个应用程序模块设置一些不同的测试套件,然后我们可以检查每个套件是否满足某些特定条件。如果某些套装不满足此条件,那么我们将跳过此测试套件。即我们可以得到 app bundles.json 文件,该文件很可能包含有关应用程序模块的所有信息,然后我们可以处理该文件以搜索当前部署的应用程序中不可用的模块。

将其视为有关如何实现此目的的不错参考:Introducing to conditional test running in TestNG

于 2018-09-10T07:31:31.167 回答