自动测试AEM工作流程

时间:2017-12-09 11:49:30

标签: testing automated-tests workflow aem

我有没有办法自动测试Adobe AEM工作流程?

我看过Hobbes.js,但据我所知,没有提及工作流程。如果它处理多个用户的工作流程,这将是理想的。

我认为这对Cucumber来说可能太具挑战性,并且难以可靠地工作。我也考虑过Prosper,但这基本上是模拟框架。

1 个答案:

答案 0 :(得分:3)

测试工作流程可能很棘手,但这是可能的。如果您考虑一下,它与测试任何其他Web应用程序没有太大区别。您只需要一种方法来控制浏览器,在帐户之间切换并以易于理解的方式管理潜在的复杂测试场景。

在我看来,Hobbes的主要问题是另一个关键要求是测试代码需要能够从命令行轻松执行并生成有用的报告以供以后使用。如果没有这个,很难将这些测试集成到CI服务器上的任何自动管道中。

我目前的项目团队在测试自定义审批和复制工作流程方面取得了一些成功。与实际调整工作流程的时间相比,测试花费了大量时间来编写,但测试是稳定的。

我们的方法依赖于使用Selenium Web Driver Java(用于浏览器控制),Google Guice(用于管理页面对象和各种实用程序功能的复杂图形)和JUnit / Cucumber的基于浏览器的Author实例测试。控制测试场景。

其中一个关键挑战是所见即所得的AEM创作界面在加载速度方面往往不会非常可靠。有很多动态部分,其中一些基于ajax调用。

如果您将Classic UI与其ExtJS前端和许多iframe一起使用,则该任务尤其困难。使用Touch UI,我认为定位界面的正确元素要容易得多。

也就是说,在您能够有效地编写测试代码之前,您必须花费大量精力来弄清楚这些接口的怪癖。

我工作的公司注意到,根据我们在众多AEM项目中的经验,我们整理了一个框架,让大家的大部分样板代码都能理解。它提供了用于与开箱即用的AEM UI的关键元素进行交互的界面。

我们在Apache 2.0许可下开源。它被称为 Bobcat 。请随时查看the project's Github page并查看simple example project

山猫也已在Cognifide之外被采用。这个blog by liatrio包含了他们发现特别有用的功能的很好的总结。