2016-06-10 2 views
0

Например, в базе данных есть таблица tbl_identitydocument, которая не связана с другими:Как проверить модели в Yii 2?

CREATE TABLE [dbo].[tbl_identitydocument](
    [ID] [int] IDENTITY(1,1) NOT NULL, 
    [Name] [varchar](100) NOT NULL, 
    [FISID] [int] NULL, 
CONSTRAINT [PK_tbl_identitydocument] PRIMARY KEY CLUSTERED 
(
    [ID] ASC 
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] 
) ON [PRIMARY] 

Эта таблица соответствует модели IdentityDocument.php. В модели есть проверка полей, так как она написана простым модульным тестом.

тест завершается с ошибкой:

There was 1 error: [yii\base\InvalidParamException] Table not found: []

Как проверить модели в Yii 2? Может быть, я делаю что-то неправильно.

И для теста, и для веб-приложения я использую одну и ту же базу данных.

Это то, что написано в README.md:

Create yii2_advanced_tests database then update it by applying migrations: codeception/bin/yii migrate

Как я понимаю, с помощью миграции мне нужно повторить структуру промышленной базы данных в тестовой базе данных, а затем использовать приспособления для заполнения созданных с помощью таблиц миграции? И только после этого будет проведено тестирование модулей моделей? ..

ответ

0

Решено. Если в измерительных приборах Unit не используются, то можно расширить класс TestCase вместо DbTestCase, в противном случае устройство захвата будет вызывать ошибки.

Смежные вопросы