2012-03-06 60 views

回答

1

UI测试很少被称为单元测试,因为测试代码单元非常困难。过去我们称之为集成测试,完整性测试,功能测试或验收测试。从本质上讲,他们验证了系统(不是代码单元)在部署后工作。但这是基于你试图达到的目标而产生的。

是否自动化UI测试取决于几个因素。开发人员的小时费率通常远高于质量保证。所以必须考虑开发人员为整个组织提供的自动化测试的价值。开发人员花在编写测试上的时间可能会更好地为系统增加价值。然而,QA很少从单位的角度来看系统,使他们处于劣势。

但是,开发人员对系统有着深入的了解,因此如果他们编写测试可以提高质量。测试充当其他开发者的文档并表达意图。更快地发现问题对于编写测试的开发人员来说便宜并且是最引人注目的动机。

所以你需要在两者之间取得平衡。开发和维护任何类型的UI测试都非常耗时且复杂,特别是在分布式环境中。用户界面测试通常不可靠,容易中断。您必须考虑配置环境,播种数据库等等。您还需要考虑是否有足够的资源来运行自动化测试。它也变得昂贵。

您可以通过外包或手动操作来降低成本。后者的重复速度可能会比创建,维护,运行和诊断自动化UI测试循环更快。这就是说,如果你的用户界面是稳定的,那么通过一对验收测试来验证系统是否正常工作是非常有利的。查看80%的时间使用的20%功能以及UI中的功能如果不起作用,将导致系统无用。至少你会知道,在给QA或客户进行测试之前,包括你的老板或客户在内的20%的每个人都在努力工作。

+0

“...在我的可视层上,基本上会包含对业务层的调用......”意味着一些代码将部署到UI层。因此,为该代码开发集成测试并利用模拟框架开发真正的单元测试是一种很好的做法。他没有具体说明这些技术,但是例如MVC应用程序可以在Web服务器上查看客户端JavaScript和控制器的逻辑,这需要进行单元测试。 – 2012-03-06 19:19:56

1

为了测试而进行的测试永远不是测试的正确理由。

1

单元测试在您部署代码的任何层上都是必需的。不管层级如何,单元测试都应该支持所有代码的完整性。

相关问题