测试应用程序的所有功能的解决方案

时间:2010-12-20 12:03:02

标签: php zend-framework

编辑:澄清 - 我正在就单元测试用户界面测试寻求建议。

目前,我不使用TDD。在我开发应用程序时,我一直在测试我正在做的工作。测试迭代可以是从次要功能变化到整个模型的任何事情。在测试之前,我尽量不要编码太多。我喜欢即时反馈。

当然,根据经验,我可以看到在编码时可能出现的问题或错误。

但是,在应用程序完成后,我通常会检查前端的整个应用程序,并确保所有功能都按预期工作。这意味着一切。每个添加/编辑/删除,排序,过滤,甚至断开链接等。

这有时会花费很多时间,但确保我的工作在部署后几乎不会包含错误。

但是,我正在寻找更标准的解决方案。有经验的开发人员做什么?假设我是一个单一的开发人员,所以没有测试部门等

您是否聘请了Beta测试人员(如果应用程序对公共使用敏感,则不行)?

构建一系列“通用”单元测试是否可行,例如可以测试所有排序,过滤功能。一个用于测试所有添加/编辑/删除功能。

很高兴听到您的反馈意见。将根据建议改变我的发展方式。

3 个答案:

答案 0 :(得分:4)

当然正如大卫所说:模型和助手的单元测试当然。

我需要添加Selenium

Selenium is a robust set of tools that supports rapid development of
     

基于网络的测试自动化   应用。硒提供丰富   具体的测试功能集   适应测试的需要   Web应用程序。这些操作是   高度灵活,允许多种选择   用于定位UI元素和比较   对实际的预期测试结果   应用行为。

这太棒了:

  1. 观看2分钟的介绍 http://seleniumhq.org/movies/intro.mov
  2. How Selenium Works
  3. Testing with PHPUnit and Selenium

答案 1 :(得分:1)

当然,模型和助手的单元测试。

但你也可以对“页面请求”进行单元测试。例如,见:

Content with Style - Unit testing controllers with Zend Framework

这是向集成测试迈出的一步。但是对于布局和视觉美学问题,你几乎无法通过浏览器遍历每个请求。

答案 2 :(得分:0)

通常你编写的代码不是问题,如果你也为它编写测试也很好。问题是每次进行提交时都需要测试更改的集成。 如果您喜欢即时反馈,就像我一样,您可能应该看看持续集成。 我已经开始使用Hudson作为CI服务器,我并不后悔!