所以我在对 CakePHP 模型进行单元测试时遇到了问题。一些简单的事情,比如编写我的验证规则正在捕获错误的测试等。
首先,我有一个名为 NewsItem 的模型。它使用以下模式在我的 MySQL 数据库中定义
CREATE TABLE news_items (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(140) NOT NULL,
body TEXT NOT NULL,
modified DATETIME DEFAULT NULL,
created DATETIME DEFAULT NULL
);
模型如下
<?php
class NewsItem extends AppModel {
var $name = 'NewsItem';
var $validate = array(
'title' => array(
'titleRule-1' => array(
'rule' => array('maxLength', 140),
'message' => 'News item\'s title\'s length exceeds limit of 140 characters'
),
'titleRule-2' => array(
'rule' => 'alphaNumeric',
'required' => true,
'message' => 'Cannot save news item without a title'
)
)
);
}
?>
在我的测试用例中有
// Validation lets All data good through
function testValidationAllowsNormalData()
{
$this->assertTrue($this->NewsItem->save(array('NewsItem' => array('title' => 'A news item', 'body' => 'Some news'))));
}
但是我的测试用例失败了。有什么想法、建议、意见吗?
最佳答案
alphaNumeric
验证规则只允许字母数字字符,即无空格。所以你的测试正确地失败了。
关于php - 单元测试 cakephp 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1905656/