首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >功能测试理念:测试特性还是需求?

功能测试理念:测试特性还是需求?
EN

Stack Overflow用户
提问于 2011-06-22 15:14:28
回答 2查看 248关注 0票数 3

我目前正在编写一些功能测试,我开始想知道这两者之间的最佳哲学是什么。

情况

我的应用程序有一些安全的页面,需要用户组拥有正确的凭据才能访问。这些用户分为两组:“合作者组”和“负责组”。各小组均获发全权证书。

可能的哲学

解决方案1:测试凭据a.k.a。测试这些特性.

对于每个受保护的页面,我用两个用户测试访问:一个有正确的凭证,只有这个,还有一个没有正确的凭证。

优点:只测试页面受特定凭据保护的事实。

缺点:没有测试客户端想要(和用户)的“最终”应用程序行为。

解决方案2:测试组a.k.a。测试需求

对于每个受保护的页面,我使用每个组的用户测试访问,并检查是否只有允许的组才能访问安全页面。

优点:测试客户端想要(和用户)的“最终”应用程序行为。

缺点

如果业务规则更改或创建了更多组,fixtures

  • Tests将不得不更改
  • 测试。

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-06-23 13:12:43

我认为第二个解决方案是好的。凭据将在与组关联的范围内进行测试。

Pros:测试客户端希望(和用户)的“最终”应用程序行为。

这是最重要的部分。功能测试旨在测试每个可能的情况下的最终应用程序。如果要测试凭据与用户或组具有相同行为的事实,最好使用单元测试。

Cons:如果业务规则发生变化,或者创建了更多的组,那么测试就必须改变。

如果应用程序的业务发生变化,则始终需要更新测试用例。就像你对单元测试所做的那样。如果修改函数的代码,则检查单元测试是否仍然能够控制每一种情况。功能测试也是如此。

维护您的测试(以及它们需要运行的工具)是一项非常繁琐的任务,但这是确保代码强大的唯一方法。

希望能帮上忙。

票数 2
EN

Stack Overflow用户

发布于 2011-06-30 10:00:16

我会做这两项测试。第一个就像您指出的,不需要更新,但是正在测试一个至关重要的事实,即没有权限的用户没有访问权限。第二种是更全面的测试,就像提摩太马丁指出的那样,当代码发生变化时,测试总是需要更新的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6442237

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档