当前位置: 首页 > 知识库问答 >
问题:

Liferay Vaadin的硒gui测试

夏侯野
2023-03-14

我们尝试通过Selenium测试Liferay 6.0.6的portlet。我们几乎没有liferay mvc Portlet和vaadin Portlet。在第一种方法中,我们创建测试,该测试执行以下步骤:

  1. 使用基本结构和portlet位置恢复数据库转储

启动selenium测试后(测试Portlet行为、通过vaadin Portlet上传文件、通过vaadin Portlet批准工作流(kaleo)任务等)。在不同的地方测试失败:

  1. 有时,通过我们的portlet上传文件时会发生DuplicateFileException(但在document manager中没有文件)
  2. 有时Selenium在页面上找不到元素
  3. 有时,kaleo工作流无法批准所有文件而不出现错误

在VM上的Jenkins节点上启动测试时,我们会得到更不稳定的行为。

如何测试portlet?有没有稳定测试行为的方法?什么是最佳实践?

共有1个答案

笪健
2023-03-14

在通过portlet上载文件的过程中,有时会发生DuplicateFileException(但在DocumentManager中没有文件)

看完整的堆栈痕迹会很有用

有时候Selenium在页面上找不到元素。

我认为有两个可能的原因/解决方案:

>

  • 如果portlet正在使用ajax加载内容,那么您的测试应该等到内容加载完毕,请尝试:

    waitForElementPresent(定位器)

    如果您不使用Vaadin TestBench,请确保您为vaadin元素设置了dedegId:

    setDebugID(“aButton”)

    如何测试portlet?

    我们使用硒和cucumber,见:https://projects.savoirfairelinux.com/projects/ctr-liferay/wiki/Portal_-_Testing

  •  类似资料:
    • 我想在元素中找到元素。我的意思是,例如,我找到这个元素,我想从这个元素开始搜索一些元素。我做这个: 但是,据我所知,搜索是从文档初学者开始的。

    • 问题内容: 我正在使用Netbeans IDE 6.9编写Java桌面应用程序(SWING)。我想进行自动GUI测试。我只知道测试是JUnit测试,不适用于我的GUI应用程序。有没有可用于测试GUI应用程序的特定测试框架,那里有好的框架吗?哪些易于使用(我需要进行测试,但我没有太多时间来做,但是,我不想忽略它)。我的应用程序基本上是一帧,有3到4个选项卡(不是一个大选项卡),我的测试应该不会很复杂

    • 问题内容: 我尝试结合检查两种情况: 如果启动检查失败,我们将提供一个重试按钮: 否则,startupcheck成功后,我们将在自定义对象中收到一个pin输入请求: 如何将其合并为一项检查而不必同时检查两项:我尝试了以下方法: 但是仅检查第一条语句。 问题答案: 您可以通过lambda表达式合并对using子句的两个元素的组合检查,如下所示: 替代解决方案是: 作为替代方案,您可以使用等效的css

    • 我需要在悬停时测试背景颜色到#F67621的变化。将背景颜色代码与预定义的预期值进行比较。我使用XPath作为选择器。 上面的代码可以有人建议我如何检查悬停按钮 CSS上面提到的代码如下:

    • 我试图测试银行系统应用程序的GUI,但在TestLogin类中,我出现了一个错误“无法解析构造函数”FrameFixture(GUI.Login)”。我试图在Login类中扩展SampleFrame类,但IntelliJ找不到依赖项。我能做些什么来解决这个问题? 这里是登录类:

    • 我使用appium和java自动化Android应用程序。作为一个初学者,我想知道TestNG和网格之间的区别。冲浪,但不能得到答案。