使用测试驱动开发开发 Perl CGI 应用程序时,第一个测试是啥?

Posted

技术标签:

【中文标题】使用测试驱动开发开发 Perl CGI 应用程序时,第一个测试是啥?【英文标题】:What is the first test when developing a Perl CGI application using test-driven development?使用测试驱动开发开发 Perl CGI 应用程序时,第一个测试是什么? 【发布时间】:2010-11-29 13:27:46 【问题描述】:

我们正在寻找使用 Perl、CGI::Application 模块和测试驱动开发的新项目。

我们的问题是:我们的第一个测试应该是什么?

我们应该测试我们的CGI::Application 子类是否存在?

我们是否应该测试/ 返回的状态为 200?

我们应该测试其他东西吗?

【问题讨论】:

【参考方案1】:

我想说您的应用程序“业务”逻辑应该在主 CGI::Application 模块之外实现。这应该只负责 CGI 交互,即 MVC 方案的“视图”和“控制器”部分。

所以,我首先为“业务”逻辑类编写测试,然后才为 cgiapp 部分编写测试。有关可用于测试 CGI::Application 模块的测试模块,请参阅 here。

我有Test::WWW::Mechanize::CGIApp的经验,可以推荐一下。

如果您需要进行更广泛的 UI 测试(包括测试 javascript 交互),您还应该研究 Selenium。

【讨论】:

【参考方案2】:

它是否编译/是否有语法错误?

这通常通过Test::More 测试完成,例如:

#!/usr/bin/env perl
use strict;
use warnings;
use Test::More;

use_ok('Your::App');

done_testing();

【讨论】:

以上是关于使用测试驱动开发开发 Perl CGI 应用程序时,第一个测试是啥?的主要内容,如果未能解决你的问题,请参考以下文章

Python ----脚本CGI特点应用开发环境

Python ----脚本CGI特点应用开发环境

PHP代码优化技巧总结

PHP开发

如何从命令行测试Perl CGI脚本的文件上传?

如何从 Perl CGI 程序发送 JSON 响应?