Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何对swing组件进行有效的TDD_Java_Swing_Tdd - Fatal编程技术网

Java 如何对swing组件进行有效的TDD

Java 如何对swing组件进行有效的TDD,java,swing,tdd,Java,Swing,Tdd,我正在研究Swing,我想知道如何有效地为我的GUI应用程序执行TDD 我已经用方丈和法斯特做了一些事情。。。但我还是觉得不管用,不是吗 就像只做功能测试,如果有人有好的建议,请发布。图形用户界面的TDD有两个方面。有GUI设置本身(比如拖放),还有GUI的功能(按下此按钮在web浏览器中启动URL) 关于GUI本身,我建议您稍后进行测试,在测试中编写一些代码,看看Swing实际执行了您期望它执行的操作,然后将这些代码放入一个可测试的方法中,以锁定行为。您仍然将其保持在较小的范围内,因此您需要在

我正在研究Swing,我想知道如何有效地为我的GUI应用程序执行TDD

我已经用方丈和法斯特做了一些事情。。。但我还是觉得不管用,不是吗


就像只做
功能测试
,如果有人有好的建议,请发布。

图形用户界面的TDD有两个方面。有GUI设置本身(比如拖放),还有GUI的功能(按下此按钮在web浏览器中启动URL)

关于GUI本身,我建议您稍后进行测试,在测试中编写一些代码,看看Swing实际执行了您期望它执行的操作,然后将这些代码放入一个可测试的方法中,以锁定行为。您仍然将其保持在较小的范围内,因此您需要在一定程度上测试设计,但最终Swing框架会驱动设计

关于GUI所做的事情,您将使未测试的部分尽可能精简,并首先为实现所需功能的方法调用编写测试。例如,添加动作监听器可能未经测试,但动作监听器只会委托给正在测试的方法

在某一点上,您必须记住,这是单元测试,因此您的所有测试都有可能通过,并且Swing仍然不能按照您想要的方式运行。不要指望TDD能给你带来更好的结果。功能测试也有自己的位置

我发现Abbot可能会在之后的第一种测试中提供帮助,但这还不足以证明额外的工具是合理的(在我们的项目中,我们已经有了一些框架,所以我尽量谨慎地考虑我们使用了多少框架)