问题标签 [phpunit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 使用需要发送标头的项目进行单元测试
我目前正在与 PHPUnit 一起尝试开发测试以及我正在编写的内容,但是,我目前正在编写会话管理器,并且在这样做时遇到了问题......
会话处理类的构造函数是
但是,由于 PHPUnit 在开始测试之前会发送文本,因此对该对象的任何测试都会返回失败的测试,因为 HTTP“标头”已经发送...
unit-testing - 测试抽象类
如何使用 PHPUnit 测试抽象类的具体方法?
我希望我必须创建某种对象作为测试的一部分。虽然,我不知道这个的最佳实践,或者 PHPUnit 是否允许这样做。
php - 如何让 PHPUnit MockObjects 根据参数返回不同的值?
我有一个 PHPUnit 模拟对象,'return value'
无论它的参数是什么,它都会返回:
我想要做的是根据传递给模拟方法的参数返回一个不同的值。我试过类似的东西:
但是,如果没有使用参数调用模拟,这会导致 PHPUnit 抱怨'two'
,所以我假设 的定义methodToMock('two')
覆盖了第一个的定义。
所以我的问题是:有没有办法让 PHPUnit 模拟对象根据其参数返回不同的值?如果是这样,怎么办?
php - phpunit 避免模拟的构造函数参数
避免 phpunit 必须调用模拟对象的构造函数的方法是什么?否则我需要一个模拟对象作为构造函数参数,另一个用于那个等等。api似乎是这样的:
我不让它工作。$callOriginalConstructor
即使设置为 false ,它仍然会抱怨构造函数参数。
我在构造函数中只有一个对象,它是一个依赖注入。所以我认为我在那里没有设计问题。
php - 哪个 PHP 单元测试框架:simpletest、phpunit 还是?
我是simpletest的忠实粉丝,因为这是我所知道的。它对模拟和网络测试有很好的支持。
但我总是害怕停滞不前,所以任何令人信服的转换论点都会受到赞赏。
php - PHPUnit 文件命名约定
我刚刚开始在一些现有代码上尝试 phpunit。我们使用的命名约定是 MyClass 类应该在 MyClass.class.php 中。PHPUnit 似乎要求该文件应称为 MyClass.php。
有没有办法解决?
我在尝试生成骨架测试类时注意到了它:
php - 使用 PHPUnit 对 Doctrine 对象进行单元测试
我开始尝试使用 PHPUnit 测试我的 Doctrine 对象,并且希望每次都从我的模型对象中重新加载数据库。
我的第一次尝试看起来像这样:
问题是当第二次测试再次调用 setUp() 时, createTablesFromModels() 失败,所以我收到一个错误,因为没有表存在。
我非常感谢其他人如何为 PHPUnit 或其他单元测试目的重新初始化 Doctrine 连接的示例。
php - 如何测试 PHPUnit 模拟对象中的第二个参数
这就是我所拥有的:
但是该方法应该采用两个参数。我只是在测试第一个参数是否正确传递(如 $arg1)。
如何测试第二个参数?
php - 在 PHPUnit 中模拟对象以模拟静态方法调用?
我正在尝试测试一个管理数据库中数据访问的类(本质上是 CRUD)。我们使用的 DB 库恰好有一个 API,您首先通过静态调用获取表对象:
...你明白了。
我们正在尝试测试此方法,但要模拟 DataObject 的东西,以便 (a) 我们不需要实际的数据库连接来进行测试,并且 (b) 我们甚至不需要包含 DB_DataObject 库来进行测试.
但是,在 PHPUnit 中,我似乎无法让 $this->getMock() 适当地设置静态调用。我有...
...但测试仍然显示未知方法“工厂”。我知道它正在创建对象,因为在它说找不到 DB_DataObject 之前。现在可以了。但是,没有办法吗?
我真正想做的是有两个模拟对象,一个也用于返回的表对象。所以,我不仅需要指定 factory 是一个静态调用,还需要它返回一些我已经设置的指定的其他模拟对象。
我应该提醒一下,我不久前在 SimpleTest 中做过这个(找不到代码)并且效果很好。
是什么赋予了?
[更新]
我开始明白它与expects()有关