Java Swing UI 测试驱动程序替换 Fest [关闭]

2023-12-19

是否有 Fest 的替代品,以便替代品可以以黑盒方式(不是 JUnit)驱动 Java Swing UI 并启用 BDD?节日(https://code.google.com/p/fest/ https://code.google.com/p/fest/, http://fest.easytesting.org http://fest.easytesting.org)自 2013 年起已被放弃(https://github.com/alexruiz/fest-swing-1.x https://github.com/alexruiz/fest-swing-1.x)如其 GitHub 项目所示。

Java BDD 工具,例如 Cucumber (https://cucumber.io https://cucumber.io) 和 jbehave (http://jbehave.org http://jbehave.org)允许 JUnit 白盒风格、高级集成测试,但不要以黑盒方式从外部驱动 Swing UI。

由于人力资源限制,无法将 UI 从 Swing 切换到 JavaFX。

当前的相关问题已经落后于时代

Java Swing GUI 的自动化测试 https://stackoverflow.com/questions/91179/automated-tests-for-java-swing-guis


断言J Swing http://joel-costigliola.github.io/assertj/assertj-swing.html是 FEST 的一个分支,目前似乎正在更新。Jubula http://www.eclipse.org/jubula/来自 Eclipse 和Marathon https://sourceforge.net/projects/marathonman/是其他开源选项。

马拉松ITE https://marathontesting.com/为 Marathon 增添了花哨的功能,附带支持和专有许可证。

我知道这是一个老问题,但由于它是在我搜索 Java Swing 功能测试自动化时出现的,我希望这对其他人有用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java Swing UI 测试驱动程序替换 Fest [关闭] 的相关文章

  • OSGi:将参数传递给特定包

    我有一个带有自定义 Main 类的自定义 jar 它启动 OSGi 框架并安装 启动捆绑包 这个主 jar 还包括一个属性文件 目标 我有一个包 A 它应该以某种方式获取主 jar 的该属性文件的属性 我的第一次尝试是在捆绑包 A 中定义一
  • 从 PDF 中提取不可选择的内容

    我正在使用 Apache PDFBox 从 PDF 文件中提取页面 但找不到提取不可选择的内容 文本或图像 的方法 从 PDF 文件中选择内容是没有问题的 请注意 相关 PDF 在复制内容方面没有任何限制 至少从我在文件的 文档限制摘要 中
  • 将比较器对象存储在数组中

    我为我的对象定义了 4 个比较器 如下所示 public static Comparator
  • java中如何围绕另一个移动对象旋转一个对象?

    我对 Java 很陌生 想要编写一个简单的太阳系统 其中月球绕地球旋转 地球绕太阳旋转 一切正常 除了月亮不想正确移动 由于地球偏离月球的初始位置 月球的自转半径会根据该距离而增大 同样 当地球接近月球惯性位置时 自转半径会减小 如果初始位
  • 如何通过keytool命令删除已经导入的证书/别名?

    我正在尝试通过 keytool 命令删除已导入的证书 keytool delete noprompt alias initcert keystore keycloak jks 但低于异常 keytool 错误 java lang Excep
  • 使用 ScheduledExecutorService 安排每月任务

    我想在该月的某一天的特定时间安排一项任务 每次运行之间的间隔可以设置在 1 到 12 个月之间 在java中 可以使用ScheduledExecutorService以固定的时间间隔调度任务 既然一个月的天数不固定 那么如何实现呢 提前致谢
  • 带有 spring-kafka 的 Kafka 死信队列 (DLQ)

    最好的实施方式是什么死信队列 DLQ Spring Boot 2 0 应用程序中的概念 使用 spring kafka 2 1 x 来处理无法处理的所有消息 KafkaListener某些bean发送到某些预定义的Kafka DLQ主题的方
  • java.sql.SQLException: - ORA-01000: 超出最大打开游标数

    我收到 ORA 01000 SQL 异常 所以我有一些与之相关的疑问 最大打开游标是否与 JDBC 连接数完全相关 或者它们也与我们为单个连接创建的语句和结果集对象相关吗 我们正在使用连接池 有没有办法配置数据库中语句 结果集对象的数量 如
  • 让 Java 与 Windows 10 Ubuntu 一起使用

    我安装了 Windows 10 周年更新 以便可以在 Windows 上的 Ubuntu 上尝试 Bash 看如何安装 http www howtogeek com 249966 how to install and use the lin
  • 用java解密AES加密文件

    我有一个使用 AES 使用 java 应用程序加密的文件 我还有一个加密的密钥文件 但我不明白如何使用密钥来解密文件 大多数教程和示例都会在一个地方创建临时随机密钥 加密文件和解密 所以 问题是如何指定解密时必须使用的密钥 EDIT 我发现
  • java3d 中的面部着色

    使用java3d 如何不在每个顶点基础上着色 而是在每个面基础上着色 我尝试学习 java3d 但我生成的 Shape3d 看起来并不符合预期 我想用不同的颜色给不同的三角形着色 但我不知道该怎么做 纹理看起来有点大材小用 而且我根本没有掌
  • 在Java中一个接一个地播放WAV文件

    我正在尝试玩几个WAV http en wikipedia org wiki WAV文件一个接一个 我尝试了这个方法 for String file audioFiles new AePlayWave file start 但这会同时播放它
  • 如何迭代SparseArray?

    有没有办法迭代 Java SparseArray 适用于 Android 我用了sparsearray通过索引轻松获取值 我找不到 看来我找到了解决方案 我没有正确注意到keyAt index 功能 所以我会这样做 for int i 0
  • 在java中设置Process对象的安全性

    有人可以告诉我如何限制通过进程对象访问系统属性吗 如果我通过进程对象运行以下代码 我可以抛出安全异常吗 System getProperty user home 请告诉我如何为流程对象配置证券 在ProcessBuilder类文档中 环境方
  • 使用 Java 进行 AES 加密并使用 Javascript 进行解密

    我正在制作一个需要基于 Java 的 AES 加密和基于 JavaScript 的解密的应用程序 我使用以下代码作为基本形式进行加密 public class AESencrp private static final String ALG
  • 如何实现再次播放功能?

    我希望在游戏结束时得到提示 如果我还想再玩一次的话 并使用 Y N 输入 退出游戏或重复游戏 我该如何以最有效的方式解决这个问题 编辑 描述资源路径位置类型 类型 Main Main java ScaredyCat src se grupp
  • 何时以及为何使用缓冲输入和输出流? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我读到这些是为了减少磁盘 网络调用开销而使用的 这在写操作的情况下似乎很好 但是进行缓冲读取有什么好处呢 如果您按字节读取文件 则每次都会进
  • 在调试模式下,哪些代码更改会自动反映在 Eclipse 中?

    我使用 eclipse 用于编写 调试 作为 IDE 在调试模式下 当我进行一些更改 例如初始化局部变量 时 它们会自动反映 但其他更改例如更改静态变量的值 有时我会收到一条消息 说我需要重新启动虚拟机 有时则不需要 现在的问题是哪些类型的
  • 跳过一行GridBagLayout

    我在 JFrame 上使用 GridBagLayout 我希望能够跳过一两行 但将这些行显示为空白 然后在这些行后面有一个按钮 我在文档中找不到任何方法来执行我所描述的操作 有谁知道我可以执行此操作的任何方法吗 发现它比添加空组件干净得多
  • Spring JMS开始根据请求监听jms队列

    Spring提供 JMSListener用于监听来自特定队列的消息的注释 还有一个替代方案实施JmsListenerConfigurer http docs spring io spring docs current spring fram

随机推荐

  • 如何在不指定确切按键的情况下读取用户按下的按键?

    基本上我需要的是如何缩短我的代码的想法 所以我现在拥有的是一个 IF 系列来获取用户按下的键 if Input GetKeyDown KeyCode I AddToBuffer I else if Input GetKeyDown KeyC
  • Firebase:如何有效跟踪用户/记录更改历史记录

    关于这个问题有很多讨论 但几乎都是在 SQL 中处理 所以据我所知 其中很多内容对于我的问题来说是不适用的 我正在编写一个 CRUD 应用程序react redux a firebase后端 AWS lambda必要时发挥作用 我的用户将有
  • import 和 require 一起使用

    最近我进入了这个 import foo require foo 这听起来很奇怪 因为我通常这样使用 require var foo require foo 或者像这样导入 import foo from foo 那么 这有什么意义呢 查看导
  • eclipse已安装但无法启动java返回退出代码= 1

    我最近安装了 eclipse dsl juno SR1 win32 x86 64 并在提取文件后 当我开始运行 Eclipse 时 出现以下错误 Java 已启动但返回退出代码 1 所需的 java 版本 1 5 我检查了原因 也尝试重新安
  • EF Core 1.0 - Include() 生成多个查询

    我正在使用 EF 7 0 0 rc1 final 以下语句在服务器上生成多个查询 这是正常现象还是我遗漏了什么 Group myGroup dbContext Set
  • 使用 GhostScript 转换为 CMYK 时,CMY 通道上显示黑色

    我正在尝试使用名为的库生成 PDFwkhtml转pdf https wkhtmltopdf org 创建 RGB pdf 然后我使用 Ghostscript 将其转换为 CMYK 格式 但是 pdf 中的黑色文本不是纯黑色 cmyk 0 0
  • 如何动态分配 github 操作中的运行值

    name test if conditions name test if conditions on push branches master test env TEST BRANCH test EMPTY VALUE jobs test
  • 从字符串中过滤字符[重复]

    这个问题在这里已经有答案了 我需要创建一个函数 它接受两个字符串作为输入 并返回 str 1 的副本 其中删除了 str2 中的所有字符 第一件事是用 for 循环迭代 str1 然后与 str2 进行比较 为了完成减法 我应该创建一个第三
  • 保存之前和加载之后的数据框状态 - 有什么不同?

    我有一个包含一些 SQL 表达式 合并 case when 等 的 DF 我后来尝试映射 平面映射这个 DF 在那里我得到了Task not serializable由于字段包含 SQL 表达式而导致错误 为什么我需要 map flatMa
  • 有效识别差异

    每天 我们都会收到来自不同供应商的不同格式 CSV XML 自定义 的巨大文件 我们需要将这些文件上传到数据库中以进行进一步处理 问题是这些供应商将发送其数据的完整转储 而不仅仅是更新 我们有一些应用程序 我们只需要发送更新 即仅发送更改的
  • Swift 中 java 的 instanceof 相当于什么?

    就像java的instanceOf关键字一样 Swift中的等价物是什么 java的例子 A a new A boolean isInstanceOfA a instanceof A 这里 isInstanceOfA 为 true 所以我需
  • Httpd.conf 多个 VirtualHost 部分(是:Mono ASP.NET MVC AutoHosting 问题)

    我正在做的正是this https stackoverflow com questions 699487 mono 2 4 autohosting and mvc 703196 703196尝试禁用自动托管 但是现在我收到 多次尝试生成进程
  • Java DatagramSocket 监听广播地址

    我编写了一个简单的测试类 旨在监听 Eth 并接收所有UDP数据包 发送至端口5001 public class Main public static void main String args throws SocketException
  • 如何解决 IIS7.0 上的“HTTP 错误 500.19 - 内部服务器错误”[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 是什么原因导致此错误 我该如何修复它 详细错误信息模块 IIS Web 核心通知开始请求处理者尚未确定错误代码0x8007052e配置错误
  • 如何在 DataReader 上实现 Peek() 函数?

    似乎没有一个Peekado net 中 DataReader 上的方法 我希望能够在循环阅读器之前执行一些一次性处理 并且如果能够查看第一行中的数据而不导致后续迭代跳过它 那就太好了 实现这一目标的最佳方法是什么 我正在使用一个SqlDat
  • 在网站之间安全地传输用户

    这是场景 您有两个存在于不同环境中的独立网站 即不同的数据库 不同的 Web 服务器 域 您可以完全控制两个站点的代码 但从上面的观点来看 它们不能直接与对方的数据库进行通信 您必须将用户从站点 A 安全地转移到站点 B 实现这一点的最佳方
  • 如何使文本在 HTML 页面中垂直和水平居中

    我对Java C 数据库 网络等有一些经验 但是与Html相关的任何东西我都是初学者 我唯一想要的就是在页面中间居中两个单词 这个页面只会有这两个词 WORD1 WORDWORDWORDWORD2 我尝试过一些所见即所得的软件 比如 Kom
  • Rails UJS“开启”处理ajax事件

    我在 Rails 应用程序中使用 jQuery 方法 on 来将事件附加到并不总是存在的表单上 当 myForm 附加到文档时 它似乎没有附加事件处理程序 这是UJS的建议用法on myForm on ajax complete funct
  • 在 Swift 中调用 CGPatternCreate

    我想知道如何将以下 Objective C 方法转换为 Swift 函数 CGPatternRef pattern CGPatternCreate NULL rect CGAffineTransformIdentity 24 24 kCGP
  • Java Swing UI 测试驱动程序替换 Fest [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有 Fest 的替代品 以便替代品可以以黑盒方式 不是 JUnit 驱动 Java Swing UI