控件创建的测试运行程序返回的信息SolverTest
测试用例。
创建以下函数,在文件中求解二次方程的根,quadraticSolver.m
,在你的工作文件夹中。
类型quadraticSolver.m
函数根= quadaticsolver (a,b,c) % quadaticsolver返回%二次方程a*x^2 + b*x + c金宝搏官方网站 = 0的解。if ~isa(a,'数值')|| ~isa(b,'数值')|| ~isa(c,'数值')error('quadraticSolver:InputMustBeNumeric',…'系数必须为数字');√(1)= (-b +√(b²- 4*a*c)) / (2*a);√(2)= (-b -√(b^2 - 4*a*c)) / (2*a);结束
在文件中创建以下测试类,SolverTest.m
,在你的工作文件夹中。
类型SolverTest.m
classdef SolverTest < matlab.unittest.TestCase方法(测试)函数realSolution(testCase) actSolution = quadraticSolver(1,-3,2);expSolution = (2, 1);testCase. verifyequal (actSolution,expSolution) end function imaginarySolution(testCase) actSolution = quadraticSolver(1,2,10);expSolution = [-1+3i, -1-3i];testCase. verifyerror (@()quadraticSolver(1,'-3',2),…' quadaticsolver:InputMustBeNumeric')结束结束结束
SolverTest
测试用例创建一个测试套件,quadTests
.
quadTests = matlab.unittest.TestSuite.fromClass (? SolverTest);结果=运行(quadTests);
运行SolverTest……完成SolverTest __________
所有测试通过。
结果
输出参数,结果
,是一个matlab.unittest.TestResult
对象。中两个测试的信息SolverTest
.
谁结果
matlab.unittest.TestResult . Name Size Bytes Class Attributes result 1x3
要查看一个值的信息,输入:
结果(1)
[1×1 struct]总计:1通过,0失败,0 Incomplete. 0.0065秒测试时间。
要访问表可用的功能,请从TestResult
对象。
rt =表(结果)
rt =3×6表Name Passed Failed Incomplete Duration Details ________________________________ _______________________________ ____________ {'SolverTest/realSolution'} true false false 0.0065241 {1×1 struct} {'SolverTest/imaginarySolution'} true false false 0.0036673 {1×1 struct} {'SolverTest/nonnumericInput'} true false false 0.0074686 {1×1 struct}
按持续时间对测试结果排序。
sortrows (rt,“持续时间”)
ans =3×6表Name Passed Failed Incomplete Duration Details ________________________________ _______________________________ ____________ {'SolverTest/imaginarySolution'} true false false 0.0036673 {1×1 struct} {'SolverTest/realSolution'} true false false 0.0065241 {1×1 struct} {'SolverTest/nonnumericInput'} true false false 0.0074686 {1×1 struct}
将测试结果导出到CSV文件中。
writetable (rt,
“myTestResults.csv”
,
“QuoteStrings”
,真正的)