Класс: testCase
Пакет: matlab.mock
Создайте объект макет
[mock,behavior]
= createMock(testcase)
[mock,behavior]
= createMock(testcase,superclass)
[mock,behavior]
= createMock(___,Name,Value)
[ создает объект mock и связанный с ним объект поведения.mock,behavior]
= createMock(testcase)
[ создает макет, который выводится из mock,behavior]
= createMock(testcase,superclass)superclass класс.
[ создает макет с дополнительными опциями, заданными одним или несколькими mock,behavior]
= createMock(___,Name,Value)Name,Value аргументы в виде пар. Можно использовать этот синтаксис с любым из аргументов из предыдущих синтаксисов.
testcase - Образец тестового примераmatlab.mock.TestCase объектОбразец теста, заданный как matlab.mock.TestCase объект.
superclass - Суперкласс для макетаmeta.class объектСуперкласс для макета, заданный как скаляр meta.class объект. Объект mock реализует все абстрактные свойства и методы этого класса.
Пример: ?MyIterfaceClass
Пример: ?MException
Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.
Для примера, [mock,behavior] = testCase.createMock('AddedProperties',{'Prop1','Prop2'}) создает макет и добавляет Prop1 и Prop2 свойства к нему.
'AddedMethods' - Имена методов, которые нужно добавить в макетИмена методов для добавления к макет, заданные как строковые массивы или массив ячеек из векторов символов. Если макет не является строгим или поведение mock не определено, вызов этих методов на макет возвращает пустой массив.
Пример: ["methodA","methodB","methodC"]
Пример: {'method1','method2'}
'AddedProperties' - Свойства, которые нужно добавить в макетИмена свойств для добавления к макет, заданные как строковые массивы или массив ячеек из векторов символов. Если мок не строг, можно задать и получить их значения. Однако, если макет является строгим, по умолчанию MATLAB® приводит к отказу утверждения, если вы задаете или получаете значение свойства.
Пример: "MyProperty"
Пример: {'Prop1','Prop2'}
'AddedEvents' - События, которые нужно добавить в макетИмена событий для добавления к макет, заданные как строковые массивы или массив ячеек из векторов символов. Чтобы добавить события к макет, объект mock должен быть выведен из класса handle.
Пример: "MyEvent"
Пример: {'Event1','Event2'}
'DefaultPropertyValues' - Значения свойств по умолчаниюЗначения свойств по умолчанию, заданные как скалярный struct. Используйте этот аргумент пары "имя-значение", чтобы задать значения по умолчанию для свойств, реализованных классом объекта mock. Эти свойства включают Abstract свойства и свойства суперкласса, добавленные в 'AddedProperties' аргумент пары "имя-значение". Каждое поле ссылается на имя свойства, реализованного в классе mock, и соответствующее значение представляет значение по умолчанию для этого свойства.
Пример: struct('PropA',123,'PropB',true)
'MockedMethods' - Методы для симуляцииstring.empty | {} | строковые массивы | cellstrМетоды для моделирования, заданные с помощью имен методов в строковых массивах или массиве ячеек векторов символов. Чтобы указать, что никакие методы не помечены, используйте пустое значение, заданное как string.empty, или {}. По умолчанию все методы издеваются.
MockedMethods может включать любой подмножество добавленных методов, абстрактных методов суперкласса и конкретных методов суперкласса, которые могут быть переопределены (Sealed значение атрибута false). В целом вы включаете только те методы, которые хотите заглушить или подсмотреть.
Определение MockedMethods позволяет тестам имитировать только те методы, которые важны для тестового примера. Ограничение методов, которые издеваются, может улучшить эффективность теста, когда суперклассы определяют много методов.
Пример: [«foo», «bar»]
Типы данных: char | string | cell
'Strict' - Индикатор, если макет является строгимfalse (по умолчанию) | trueИндикатор, если макет является строгим, задается как false или true. По умолчанию метод mock возвращает пустой массив, если поведение не определено. Если вы задаете Strict на trueсреда создает отказ утверждения для неопределенного поведения для
Все abstract методы и свойства заданного интерфейса.
Методы, добавленные к макету с AddedMethods аргумент.
Свойства, добавленные к макету с AddedProperties аргумент.
Типы данных: logical
'ConstructorInputs' - Входы для перехода к superclass конструкторВходы для перехода к superclass конструктор, заданный как массив ячеек значений.
Пример: Если вы создаете макет, где вы задаете superclass чтобы быть ?MException, 'ConstructorInputs' можно было бы {'My:ID','My message'}.
mock - Реализация абстрактных методов и свойствРеализация абстрактных методов и свойств интерфейса, заданных superclass вход, возвращается как объект mock. Если макет построен без определения суперкласса, он не имеет явного интерфейса.
Примечание: Вы не можете сохранять и загружать объекты макет.
behavior - Определение поведения мокаОпределение поведения макета, возвращаемое как объект поведения. Использование behavior для определения действий mock и проверки взаимодействий.
Примечание. Вы не можете сохранять и загружать объекты поведения.
Создайте тест для интерактивных проверок.
testCase = matlab.mock.TestCase.forInteractiveUse;
Создайте строгий макет.
[mock,behavior] = testCase.createMock('AddedMethods',"foo",'Strict',true);
Создайте макет с помощью определенных методов.
[mock,behavior] = testCase.createMock('AddedMethods',... {'one','two','three'});
Создайте макет с определенными событиями.
[mock,behavior] = testCase.createMock(?handle,'AddedEvents',... {'EventA','EventB'});
Создайте мок с входами конструктора.
[mock,behavior] = testCase.createMock(?MException,'ConstructorInputs',... {'My:ID','My message'});
Создайте макет с двумя свойствами. Prop2 имеет значение по умолчанию false.
mock = testCase.createMock('AddedProperties',{'Prop1','Prop2'},... 'DefaultPropertyValues',struct('Prop2',false))
mock =
Mock with properties:
Prop1: []
Prop2: 0Создайте макет, который переопределяет isnan и isinf методы классового double.
[mock,behavior] = testCase.createMock(?double,"MockedMethods",["isnan","isinf"],... "ConstructorInputs",{123});
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.