主要内容

getMockHistory

类:matlab.mock.TestCase
包:matlab.mock

返回模拟交互的历史TestCase实例

描述

例子

历史= getMockHistory (testcase模拟返回模拟对象的历史记录。历史的数组。matlab.mock.InteractionHistory对象。中的每个元素历史对应于一个方法调用、属性访问或属性修改。数组元素是有序的,第一个元素表示第一次记录的交互。此方法只返回与公共可见方法和属性的交互。例如,以下交互不会被记录:

  • 调用隐藏的方法

  • 调用密封超类方法

  • 访问或修改具体的超类属性

输入参数

全部展开

测试用例的实例,指定为matlab.mock.TestCase对象。

模拟以返回交互的历史记录,指定为模拟对象。

例子

全部展开

构造一个模拟computeValue方法和两个属性。指定一个默认值Prop2

tc = matlab.mock.TestCase.forInteractiveUse;(模拟、行为)= tc.createMock (“AddedMethods”,{“computeValue”},“AddedProperties”,{“Prop1”“Prop2”},“DefaultPropertyValues”结构(“Prop2”、假));

设置的行为computeValue方法返回值42,而不管输入值如何。

进口matlab.mock.actions.AssignOutputs;当(withAnyInputs (behavior.computeValue) AssignOutputs (42));

与mock交互。第一次调用computeValue方法。然后显示的值Prop2.最后,设置值Prop1

n = mock.computeValue (“你好”);模拟。Prop2模拟。Prop1= 13;
Ans =逻辑0

获取模拟的交互历史。

h = tc.getMockHistory(模拟)
h = 1×3异构InteractionHistory (SuccessfulMethodCall, SuccessfulPropertyAccess, SuccessfulPropertyModification)数组,具有以下属性:模拟),“你好”)<模拟>。Prop2 <模拟>。Prop1 = 13

检查第一个InteractionHistory对象。使用模拟对象和字符向量调用该方法“你好”作为输入。该方法输出值42。

h (1)
名称:"computeValue"输入:{[1×1 matlab.mock.classes. ans = SuccessfulMethodCall . properties:输出:{[42]}交互摘要:computeValue([1×1 matlab.mock.classes.]模拟),“你好”)

选择

方法可以获得相同的交互历史matlab.mock.InteractionHistory.forMock方法。例如,如果你有一个matlab.mock.TestCase实例tc,和一个模拟对象模拟,下面的方法调用是等价的。

h = matlab.mock.InteractionHistory.forMock(模拟);h = tc.getMockHistory(模拟);

但是,您不需要访问matlab.mock.TestCase实例来使用matlab.mock.InteractionHistory.forMock方法。

版本历史

介绍了R2018a

另请参阅