【发布时间】:2010-11-29 13:27:46
【问题描述】:
我们正在寻找使用 Perl、CGI::Application 模块和测试驱动开发的新项目。
我们的问题是:我们的第一个测试应该是什么?
我们应该测试我们的CGI::Application 子类是否存在?
我们是否应该测试/ 返回的状态为 200?
我们应该测试其他东西吗?
【问题讨论】:
标签: perl web-applications tdd cgi
我们正在寻找使用 Perl、CGI::Application 模块和测试驱动开发的新项目。
我们的问题是:我们的第一个测试应该是什么?
我们应该测试我们的CGI::Application 子类是否存在?
我们是否应该测试/ 返回的状态为 200?
我们应该测试其他东西吗?
【问题讨论】:
标签: perl web-applications tdd cgi
我想说您的应用程序“业务”逻辑应该在主 CGI::Application 模块之外实现。这应该只负责 CGI 交互,即 MVC 方案的“视图”和“控制器”部分。
所以,我首先为“业务”逻辑类编写测试,然后才为 cgiapp 部分编写测试。有关可用于测试 CGI::Application 模块的测试模块,请参阅 here。
我有Test::WWW::Mechanize::CGIApp的经验,可以推荐一下。
如果您需要进行更广泛的 UI 测试(包括测试 javascript 交互),您还应该研究 Selenium。
【讨论】:
它是否编译/是否有语法错误?
这通常通过Test::More 测试完成,例如:
#!/usr/bin/env perl
use strict;
use warnings;
use Test::More;
use_ok('Your::App');
done_testing();
【讨论】: