Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.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 单元测试_Java_Unit Testing_Agents Jade - Fatal编程技术网

Java 单元测试

Java 单元测试,java,unit-testing,agents-jade,Java,Unit Testing,Agents Jade,人们使用了哪些技术和设计策略来帮助单元测试Jade应用程序?特别是,人们通常如何进行行为测试——这些行为与代理实例和Jade环境紧密耦合?我知道这个项目,但这似乎更倾向于系统测试——特别是协作代理之间的消息交换 谢谢。JADE有过度使用继承的倾向,正如您正确指出的,这会导致(除其他外)高度耦合、难以测试的行为 在工作中,我们编写了一个自适应层,它位于我们的代理/行为和JADE代理/行为之间,允许我们单独测试我们的行为。我们计划将其作为OSS发布,但首先要解决一些管理难题 在家里,我已经开始研究一

人们使用了哪些技术和设计策略来帮助单元测试Jade应用程序?特别是,人们通常如何进行行为测试——这些行为与代理实例和Jade环境紧密耦合?我知道这个项目,但这似乎更倾向于系统测试——特别是协作代理之间的消息交换


谢谢。

JADE有过度使用继承的倾向,正如您正确指出的,这会导致(除其他外)高度耦合、难以测试的行为

在工作中,我们编写了一个自适应层,它位于我们的代理/行为和JADE代理/行为之间,允许我们单独测试我们的行为。我们计划将其作为OSS发布,但首先要解决一些管理难题

在家里,我已经开始研究一种向后兼容的JADE重构,它使用单元可测试的pojo进行行为逻辑。它仍然处于alpha阶段,但到目前为止,我已经能够用更少的样板代码和更多的可测试逻辑生成行为


更新:我在网站上添加了示例和文档。请看一看,让我知道你的想法

谢谢你的回复。这个项目听起来很棒,正是我们需要的。你提到的自适应层的一个小例子有没有可能?谢谢。简而言之,我们有一套从翡翠代理商/行为继承而来的代理商/行为,我们使用的每种翡翠类型都有一套。其中每一个都有一个委托对象,通过接口保存,并将其所有方法传递给该委托对象。然后可以对这些委托对象进行单元测试,而无需实例化任何JADE基类。它是有效的,从客户端代码的角度来看,它是相当干净的,但是有许多问题实际上只能通过更新JADE代码来解决;因此,我正在研究jade oo。我很快会在谷歌的代码页面上发布这些例子。