这个设计(反)模式的名称是什么?

时间:2015-01-29 07:14:48

标签: unit-testing testing design-patterns

最近我做了一个项目,最初是一个用Swing编写的胖客户端Java应用程序。后来他们得到了支持http请求的要求。所以他们实现了这样的代码:

public void handleRequest(...) {
    if(contextPath.equals("purchase-product")) {
        getMainPanel().getPurchasePanelButton().doClick();
        getMainPanel().getPurchasePanel().selectProductById(productId);
        if(getMainPanel().getPurchasePanel().getPurchaseButton().isEnabled()) {
           getMainPanel().getPurchasePanel().getPurchaseButton().doClick();
           ...
        }
    }
    ....
}

我的第一个想法是WTF。 Weren他们熟悉MVC模式吗?

但后来我认为他们实现了这样的代码,能够通过使用JMeter或SoapUI的http请求进行Swing GUI测试,而不是像Squish这样复杂的GUI框架。

我的问题是人们使用类似的技术来简化他们的组件测试吗?这个(反)模式的名称是什么?

1 个答案:

答案 0 :(得分:1)

我投票赞成" Big Ball of Mud"。无论如何,它显然与有用的模式相反" Tell, Don't Ask"所有那些accessor(get)方法在每个可能的抽象级别公开实现细节。它对Demeter的忽视是非常了不起的,在第二个参考文献中也提到了这一点。