【问题标题】:How do I test my CakePHP application for specific user types?如何针对特定用户类型测试我的 CakePHP 应用程序?
【发布时间】:2009-05-29 23:20:46
【问题描述】:

我正在 CakePHP 中进行单元测试。我想测试我的两个控制器。我的应用有不同类型的用户。我想根据登录的用户类型测试应用程序返回的结果。但是,我不知道如何从控制器测试用例登录到应用程序。我尝试了几种方法都没有成功。 1) 我尝试使用用户控制器登录,然后运行我的测试用例,2) 尝试将 Web 测试用例与控制器单元测试分组。

任何帮助将不胜感激。

谢谢。

【问题讨论】:

    标签: unit-testing cakephp


    【解决方案1】:

    在测试控制器上尝试Mark-story's article。你不是真的测试单元吗?根据定义为unit is the smallest testable part of an application。为您的应用程序创建如此广泛的大型测试似乎是个坏主意,因为如果没有失败的测试,应用程序就无法增长。我相信您应该尝试将问题拆分为较小的部分。换句话说,确保用户被识别为正确的类型,并且在给定该类型的情况下,他们无法访问他们不应该访问的特定信息。

    【讨论】:

    • 感谢您的回复。我想知道您是否可以解释为什么我要做的不是单元测试。我想在控制器中测试一种方法。但是,此方法返回的内容取决于登录用户的类型。这似乎是您的建议:测试用户无法访问他们不应该访问的信息。无论如何,再次感谢您的回复。
    • 控制器方法(即Action)实际上并没有返回任何东西,在任何编码意义上都没有。它接受输入,进行任意数量的验证和检查,然后对一个或多个模型发出任意数量的请求,然后将数据传递给视图。对此进行整体测试,至少对我来说没有意义。
    • 问题是根据上面的评论,你不能测试任何业务逻辑,除非它在一个模型中。我希望控制器也具有不可输出的可测试方法。欢迎对此发表意见。
    猜你喜欢
    • 2015-06-24
    • 2018-06-21
    • 2011-02-20
    • 2010-12-13
    • 1970-01-01
    • 2011-07-16
    • 2018-10-07
    • 2021-03-19
    • 1970-01-01
    相关资源
    最近更新 更多