问题标签 [gui-testing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
924 浏览

c# - 对旧的第三方控件使用 UI 自动化

是否有开箱即用的方式为不支持 UI 自动化的第三方控件创建 UI 自动化提供程序?

我的问题:我尝试使用 VsFlexGrid ActiveX 控件自动化 vb6 应用程序,但无法访问其属性和方法。

谢谢

0 投票
2 回答
2018 浏览

testing - Selenium 不启用按钮

我只需要对我的应用程序的 UI 测试进行一些操作,并且碰巧发现了一个问题。

登录屏幕具有用户 ID 和密码字段,如果两个字段中都有一些内容,则通过 javascript if 和 onlf 启用登录按钮。

当我录制套件时,按钮被启用并且 selenium 记录操作。

但是当整个套件运行时,登录按钮永远不会启用,并且在等待 30000 毫秒后测试失败。

我是否必须手动启用此按钮或编写测试用例才能启用?这种情况的理想解决方案是什么。

问候,

萨提亚

0 投票
2 回答
669 浏览

tdd - 如何将网站设计为(UI/前端)可测试的?

我对如何使用测试驱动开发来开发 Web-GUI 很感兴趣。

特别是我想知道是否有任何关于如何设计 Web 前端(即 HTML)以便(当然是自动......)可测试的指南/提示/最佳实践?(在经典的 UI 开发中,有支持 TDD 和自动化测试的 MVVC 等模式)

0 投票
6 回答
35132 浏览

python - 从脚本驱动 Windows GUI 程序

我必须使用 Windows 模拟包来执行重复性任务,每次使用的选项都略有不同。

由于我讨厌重复点击,基于懒惰和人类引入的错误数量,我想自动驱动这个程序。有问题的程序不支持脚本,没有 API,没有 COM,nada,nyet,nravin。据我所知,自动驱动该程序的唯一方法是模仿人类(即键盘和鼠标宏)。

我知道 AutoHotKey 但我不认为它做我想要的。(或者它可能会做我想做的事,但它的脚本语言很糟糕。)

要求是:

  • 必须允许动作之间的时间延迟,或事件检测来触发动作。

    模拟最多可能需要十分钟才能运行,因此 GUI 驱动程序必须等到模拟完成才能开始新的模拟。

    一种方法是等待十分钟,然后希望模拟已经完成。另一种方法是使其成为事件驱动的,即注意“模拟运行...”对话框消失并被“模拟完成”对话框取代。

  • 必须允许组合复杂的键盘输入。

    每次模拟运行所需的某些键盘输入都不同。例如,模拟描述可能采用格式[Project name][Scenario name][Option 1][Option 2]...,并且必须为每个模拟输入。

    我知道 AutoHotKey 允许基本级别的输入自定义,但我对文档的随意阅读使脚本语言看起来像是某种可怕的恐怖。

  • 这是为了工作,所以任何解决方案都必须免费用于商业用途。

我会接受任何符合上述标准的解决方案,但我对可以从 Python 驱动的东西有强烈的偏好。但是,我也会接受自动化的 GUI 测试工具,我可以自定义这些工具来做我想做的事情 - 可能是 Win32 GUI 相当于Selenium的浏览器?- 将生成自定义输出或其他任何有效的键盘宏记录器。

0 投票
1 回答
860 浏览

vbscript - 有没有办法让 QTP 中的 OptionalStep 快速超时?

在我的自动化测试中,我有一个偶尔出现的区域(当它出现时需要点击)。这是使用 OptionalStep 前缀的理想场所,以防止在可选区域从未出现时步骤失败。

问题是,我希望 OptionalStep 在继续测试的其余部分之前只等待一两秒钟。就像我可以让 object.Exist(2) 只等待 2 秒一样,有没有办法让 OptionalStep 只等待几秒钟?

其他一些注意事项:

  • 我想把它保留为一小行。我知道我可以创建一个在 If/Then 语句中使用 object.Exist(2) 的多行逻辑测试,但我宁愿让代码小而精巧。
  • 我不想仅仅为这一步更改全局 20 秒超时。
  • 由于此可选步骤仅出现在一个特定区域,因此在整个测试过程中运行恢复方案似乎不是一个好的选择。
0 投票
1 回答
1651 浏览

vbscript - 有没有办法接受带有 QTP 的 UAC 提示?

我创建了一个需要运行可执行文件(在本例中为卸载脚本)的自动化测试。这会导致 Windows 7 显示用户帐户控制提示,在继续 QTP 测试之前需要接受该提示。

就目前而言,我不得不将 UAC 降低到“不要使我的桌面变暗”级别,以便将对话框添加到对象存储库中。我尝试单击“是”按钮进行录制,但 QTP 没有注意到我的操作,因此我不得不手动添加对象。

即使那样,当我添加 line 时,我也会从 QTPDialog("User Account Control").WinButton("Yes").Click收到。Unspecified Error

编辑: 我还尝试使用下面的代码单击屏幕上的任意点(“是”按钮恰好在该点)。

好消息是光标正好落在“是”按钮上,不幸的是点击不起作用。

QTP 有没有办法接受 UAC 提示,而不完全禁用 UAC?

0 投票
2 回答
208 浏览

c++ - 需要为一个 gui 应用程序编写一个测试

我正在寻找自动化控制点击、列表视图点击等,有没有什么好的 qt 框架可以提供帮助?我需要在没有源代码的情况下执行这些测试

0 投票
1 回答
919 浏览

java - Jubula 无法启动我的应用程序

我正在评估各种 GUI 测试框架。

我从 Jubula 开始,基本上遵循以下教程:http://jmhofer.johoop.de/?p=132,将其应用于我们的应用程序。

我有一个启动应用程序的批处理文件,但我无法通过 Jubula 启动它。

如此处所述http://jmhofer.johoop.de/?p=163我启动 AUT 代理并连接到它,但是当我尝试通过“启动 AUT”启动应用程序时没有任何反应。Jubula 控制台中没有任何内容,“启动 AUT 代理”窗口中没有任何内容。

这可能是什么原因?我在哪里可以找到更多信息 出了什么问题?

0 投票
3 回答
286 浏览

testing - 测试系统的生产数据

我需要一些关于如何在手动 UI 测试中处理测试数据的建议。我们的应用程序需要来自数据库的数据才能工作和手动测试。由于我们正在处理敏感数据,因此我们不允许转储生产数据以在我们的测试系统(或开发机器)上使用它。

你如何处理这个问题?我正在考虑屏蔽生产数据以在测试中使用它的可能性,是否有任何免费或开源工具可以做到这一点?我更喜欢这种解决方案,因为可以产生大量数据。我希望您有一个想法,手动创建测试数据将非常耗时。

0 投票
4 回答
2019 浏览

user-interface - Gui 测试时间太长 - 你的方法是什么?

我们有一个典型的 Web 应用程序堆栈。针对应用程序执行了 120 个 selenium (webdriver) 测试。这需要大约 1 小时。我们将它们作为构建链“编译 > 单元测试 > 集成测试 > gui 测试”的一部分来执行。gui 测试占用了大量时间,我们想知道如何更好地构建它们。目前它们是“快乐的案例和不快乐的”案例测试。它们非常稳定,即它们不会因为程序员错误而失败。

我们希望缩短构建时间,最重要的部分是 gui 测试。我们希望基于“客户旅程”来做到这一点,即指定(与业务人员一起)一些典型的用例并测试它们(快乐路径)而不是测试太多......

你们如何构建你的 gui 测试?这是我想到的一些想法

  • 只执行快乐路径测试
  • 做一个“客户旅程测试”,即一次做几个快乐路径测试(“点击页面”)
  • 只取业务指定的“前 10 名”(关键任务)
  • 前 10 名 + “其余所有”作为夜间构建(一次)

我会很感激你的想法

谢谢马塞尔