精华内容
下载资源
问答
  • 一、实验目的 1. 了解离散相似的基本原理  2. 掌握离散相似仿真的基本过程  3. 应用离散相似仿真非线性系统  4. MATLAB实现离散相似的非线性系统仿真  5. 掌握SIMULINK仿真方法,应用于非线性系统的...

    一、实验目的

    1. 了解离散相似法的基本原理
      2. 掌握离散相似法仿真的基本过程
      3. 应用离散相似法仿真非线性系统
      4. MATLAB实现离散相似法的非线性系统仿真
      5. 掌握SIMULINK仿真方法,应用于非线性系统的仿真,并对实验结果进行分析比较

    二、实验原理

      在ASR的输出增加限幅装置(饱和非线性,饱和界为c=8 )。 Ce=0.031,其它参数不变。输入为单位阶跃,用离散相似法求系统各环节的输出。

      要求:采用零阶保持器和一阶保持器离散化系统,分别完成本实验。

    1、各环节的参数:

      由5个典型环节组成:

      A=[0 0 1 1 0];

      B=[tn ti Ts Tl Tm*Ce];
      C=[Kn Ki Ks 1/R R];
      D=[Kn*tn Ki*ti 0 0 0];

      还有一饱和非线性环节:c=8;

    2、各环节的离散化系数矩阵

     3、各环节的输入作用

       

    (1)u(n)可通过联接矩阵直接求得: 

          

    u(n)=[u1(n), u2(n),…,un(n)]为各环节的输入量, n为环节数。 Y(n)=[Y1(n), Y2(n),…,Yn(n)]为各环节的输出量, r为外中参考输入量。

    (2)U(n)由近似表达式求得:
          

    (3)u(n+1)用折线法近似求得:

          

     

    4、状态和输出计算

    (1)一阶保持器
          X=FI'.*X+FIM'.*Uk+FIJ'.*Udot;
          Y=FIC'.*X+FID'.*Uf;

    (2)零阶保持器
          X=FI'.*X+FIM'.*Uk;
          Y=FIC'.*X+FID'.*Uf;

    5、饱和非线性环节

    看作环节1(ASR)的一部分。建立satur.m文件:

    function [uo]=satur(ui,c)
        if (abs(ui)<=c)
            uo=ui;
        elseif ( ui > c )
            uo = c;
        else
            uo=-c;
        end
    end
    

    三、实验过程

    1、新建脚本文件,命名为satur.m

    function [uo]=satur(ui,c)
        if (abs(ui)<=c)
            uo=ui;
        elseif ( ui > c )
            uo = c;
        else
            uo=-c;
        end
    end

    2、新建脚本文件,命名为test3.m

      完整代码:

    clc;
    clear;
    % ******  各环节参数  ****** %
    Kn=26.7;
    tn=0.03;
    Ki=0.269;
    ti=0.067;
    Ks=76;
    Ts=0.00167;
    R=6.58;
    T1=0.018;
    Tm=0.25;
    Ce=0.031;
    Alpha=0.00337;
    Beta=0.4;
    A=[0 0 1 1 0];
    B=[tn ti Ts T1 Tm*Ce];
    C=[Kn Ki Ks 1/R R];
    D=[Kn*tn Ki*ti 0 0 0];
    c=8;
    r=1;
    W=[0 0 0 0 -Alpha;
        1 0 0 -Beta 0;
        0 1 0 0 0;
        0 0 1 0 -Ce;
        0 0 0 1 0];
    W0=[1 0 0 0 0]';
    h=0.001;
    t_end=0.5;
    t=0:h:t_end;
    n=length(t);
    % ******  各环节离散化系数  ****** %
    block_num=5;
    for k=1:block_num
        if(A(k)==0)
            FI(k)=1;
            FIM(k)=h*C(k)/B(k);
            FIJ(k)=h*h*C(k)/B(k)/2;
            FIC(k)=1;
            FID(k)=0;
            if(D(k)~=0)
                FID(k)=D(k)/B(k);
            end
        else
            FI(k)=exp(-h*A(k)/B(k));
            FIM(k)=(1-FI(k))*C(k)/A(k);
            FIJ(k)=h*C(k)/A(k)-FIM(k)*B(k)/A(k);
            FIC(k)=1;
            FID(k)=0;
            if(D(k)~=0)
                FIC(k)=C(k)/D(k)-A(k)/B(k);
                FID(k)=D(k)/B(k);
            end
        end
    end
    
    Y0=[0 0 0 0 0]';
    Y=Y0;
    X=zeros(block_num,1);
    result1=Y;
    Uk=zeros(block_num,1);
    Ub=Uk;
    
    for m=1:(n-1)
        Ub=Uk;
        Uk=W*Y+W0*r;
        Uf=2*Uk-Ub;
        Udot=(Uk-Ub)/h;
        
        %******  零阶保持器  ******%
        X=FI'.*X+FIM'.*Uk;
        Y=FIC'.*X+FID'.*Uf;
        
        Y(1)=satur(Y(1),c);
        result1=[result1,Y];
    end
    
    Y0=[0 0 0 0 0]';
    Y=Y0;
    X=zeros(block_num,1);
    result2=Y;
    Uk=zeros(block_num,1);
    Ub=Uk;
    for m=1:(n-1)
        Ub=Uk;
        Uk=W*Y+W0*r;
        Uf=2*Uk-Ub;
        Udot=(Uk-Ub)/h;
        
        %******  一阶保持器  ******%
        X=FI'.*X+FIM'.*Uk + FIJ'.*Udot;
        Y=FIC'.*X + FID'.*Uf;
        
        Y(1)=satur(Y(1),c);
        result2=[result2,Y];
    end
    
    plot(t,result1(5,:),'-.',t,result2(5,:),'--',t,ScopeData.signals.values,'k');
    legend('零阶保持器','一阶保持器','Simulink');

     

    3、在Simulink中绘制仿真图

     

     注意:Simulink中的变量名和工作区变量关联方法请点击:这里

    四、实验结果

     

    展开全文
  • (八)正交表实验法

    千次阅读 2015-04-14 14:58:52
    从大量的(实验)数据(测试例)中挑选适量的,有代表性的点(例),从而合理地安排实验(测试)的一种科学实验设计方法.类似的方法有:聚类分析方法,因子方法方法等。利用因果图来设计测试用例时, 作为输入条件的原因...

    1.定义:

    从大量的(实验)数据(测试例)中挑选适量的,有代表性的点(例),从而合理地安排实验(测试)的一种科学实验设计方法.类似的方法有:聚类分析方法,因子方法方法等。利用因果图来设计测试用例时, 作为输入条件的原因与输出结果之间的因果关系,有时很难从软件需求规格说明中得到。往往因果关系非常庞大,以至于据此因果图而得到的测试用例数目多的惊人,给软件测试带来沉重的负担,为了有效地,合理地减少测试的工时与费用,可利用正交实验设计方法进行测试用例的设计。

    2.利用正交实验设计测试用例的步骤:

    1).提取功能说明,构造因子--状态表

    把影响实验指标的条件称为因子.而影响实验因子的条件叫因子的状态.利用正交实验设计方法来设计测试用例时,首先要根据被测试软件的规格说明书找出影响其功能实现的操作对象和外部因素,把他们当作因子,而把各个因子的取值当作状态.对软件需求规格说明中的功能要求进行划分,把整体的概要性的功能要求进行层层分解与展开,分解成具体的有相对独立性的基本的功能要求.这样就可以把被测试软件中所有的因子都确定下来,并为确定个因子的权值提供参考的依据.确定因子与状态是设计测试用例的关键.因此要求尽可能全面的正确的确定取值,以确保测试用例的设计作到完整与有效。

    2).加权筛选,生成因素分析表

    对因子与状态的选择可按其重要程度分别加权.可根据各个因子及状态的作用大小,出现频率的大小以及测试的需要,确定权值的大小。

    3).利用正交表构造测试数据集

    利用正交实验设计方法设计测试用例,比使用等价类划分,边界值分析,因果图等方法有以下优点:节省测试工作工时;可控制生成的测试用例数量;测试用例具有一定的覆盖率。

    3.1正交表的基本性质

    1)正交性

    (1)任一列中,各水平都出现,且出现的次数相等

        例如L8(27)中不同数字只有1和2,它们各出现4次;L9(34)中不同数字有1、2和3,它们各出现3次 。

    (2)任两列之间各种不同水平的所有可能组合都出现,且对出现的次数相等 

    例如 L8(27)中(1, 1), (1, 2), (2, 1), (2, 2)各出现两次;L9(34) 中 (1, 1),  (1, 2),  (1, 3),  (2, 1),  (2, 2),  (2, 3),  (3, 1),  (3, 2),  (3, 3)各出现1次。即每个因素的一个水平与另一因素的各个水平所有可能组合次数相等,表明任意两列各个数字之间的搭配是均匀的。

    2代表性

    一方面:

    1)任一列的各水平都出现,使得部分试验中包括了所有因素的所有水平;

     (2)任两列的所有水平组合都出现,使任意两因素间的试验组合为全面试验。

    另一方面:由于正交表的正交性,正交试验的试验点必然均衡地分布在全面试验点中,具有很强的代表性。因此,部分试验寻找的最优条件与全面试验所找的最优条件,应有一致的趋势。 

    3综合可比性

    (1)任一列的各水平出现的次数相等;

    (2)任两列间所有水平组合出现次数相等,使得任一因素各水平的试验条件相同。这就保证了在每列因素各水平的效果中,最大限度地排除了其他因素的干扰。从而可以综合比较该因素不同水平对试验指标的影响情况。

    正交表的三个基本性质中,正交性是核心,是基础,代表性和综合可比性是正交性的必然结果 

     

    4)生成的步骤

    ® 1 有哪些因素(变量)

    ® 2 每个因素有哪几个水平(变量的取值)

    ® 3 选择行数最少的正交表

    ® 4 把变量的值映射到表中

    ® 5 把每一行的各因素水平的组合做为一个测试用例

    ® 6 加上你认为可疑且没有在表中出现的组合

    计算行数:

    正交表行数的确定:

    试验次数(行数)=∑(每列水平数-1)+1

    例:5个3水平因子及一个2水平因子,表示为35*21,试验次数=5*(3-1)+1*(2-1)+1=12,即L12(35*2) 

    5)判断是否可以使用正交表

    1)并不是任何情况下都可以使用正交表,以下情况无法使用正交表:

    Ø 因素的个数非常少,如只有2个;

    Ø 因子数很大。

    2)另外在识别的因子中,还要进行一下分析:

    Ø 组合因素之间必须为平行关系(平行:可以同时存在)

    Ø 不能为互斥(互斥:1个因素存在,另1个因素不能存在)

    Ø 因素不能被其他因素的因子制约(制约:当A因素的因子为A1,B因素不能存在)

    Ø 排除非组合因素

     

    6)选择正交表的原则

     

    如果判断可以使用正交测试大方法设计用例,需要根据测试功能点的时间情况,选择正交表。选择正交表的原则如下:

    1)因素数<=正交表因素数;

    2)每个因子数<=正交表每个因子数;

    3)如果出现2个或2个以上正交表符合以上条件,则选择Case数最少的正交表。

    选取了正交表后,删除正交表中多余的因子列,原则是删除靠后的列。

    4)对因子与状态的选中可按其重要程度分别加权。可根据各个因子及状态的作用大小。对于权重高的因子放在最前面的列中,以此类推。

    或是选中如下的描述:

     

    Ø 表中的因素数>=5

    Ø 表中至少有5个因素的水平数>=2

    Ø 行数取少的一个

    Ø 结果:

     

     

    3.2 引用的例子

    产品文件查询为例子

     

    下图是文件上传列表的页面,要测试的控件有3个,也就是要考虑的因素有三个:项目名称、产品型号、文件名称,而且每个因素有两个状态,填或是不填。表中的因素数>=3;表中至少有3个因素的水平数>=2,行数取最少的一个。从正交表公因式中开始查找,结果为:,即实验4次。

     

    共有8条测试用例,如下图:


    3.3 引用LMS引用的例子

     

    以发邮件为例子,发邮件在LMS上的需求是:收件人和正文必须填写,主题和附件可以不填。

    1)列出因素数和水平数:

    1)收件人:单用户、多用户(已经存在的用户)

    2)正文:图片、非图片(文字类型)

    3)主题:可填、可不填

    4)附件:可填、可不填

    因素数是:收件人,正文,主题,附件

    水平数是:2(每一个因素数都是2 

    确定行数:

    2水平的有两种:一种是;另一种是。所以采用的是。

    2)把变量映射到表中



    补充的测试用例:

    实验9:一个用户,图片,可不填,可不填

    实验10:多个用户,非图片,可填,可填

    如果按照判定驱动表法的列出共有:2*2*2*2=16种,现在采用正交表实验法功能有:8+2=10种,少了16-10=6种测试用例

    设计的用例如下:








    展开全文
  • 测试方法-正交实验法/场景

    千次阅读 2020-04-08 22:37:56
    正交实验法如何查找正交表正交实验法例子2.场景法例1--微信红包例2--淘宝网买东西 1.正交实验法 正交试验设计(Orthogonal experimental design), 是从大量的试验点中挑选出适量的、有代表性的点,应用依据迦罗卡瓦...


    是看着课程听的,做的课程的随堂笔记
    课程的链接如下:
    https://coding.imooc.com/class/411.html

    1.正交实验法

    正交试验设计法(Orthogonal experimental design), 是从大量的试验点中挑选出适量的、有代表性的点,应用依据迦罗卡瓦理论导出的“正交表”,合理的安排试验的一种科学的试验设计方法。(假如进行测试时有大量数据和大量场景,可以依据类似于穷举法来设计一个正交实验。)

    正交试验设计法分为:
    ◆指标:通常把判断试验结果优劣的标准叫做试验的指标
    ◆因子(因素Factor):所有影响试验指标的条件
    ◆因子的状态(水平Level):而影响实验因子的,叫做因子的状态(因子变量的取值)
    eg:
    比如登录,现在有用户名,密码(这是两个因子) 每个因子有100个取值(因子的状态
    是100)

    正交实验法设计步骤
    1.提取功能说明,构造因子-状态表
    在这里插入图片描述
    2.加权筛选,生成因素分析表
    计算各因子和状态的权值,删去一部分权值较小, 即重要性较小的因子或状态,使最后生成的测试用例集缩减到允许范围。

    3.利用正交表构造测试数据集
    ◆如果各个因子的状态树是不统一-的, 几乎不可能出现均匀的情况,必须首先用逻辑命令来组合各因子的状态,作出布尔图
    ◆根据布尔图得到相应阶数的正交表
    ◆依照因果图上根节点到叶子节点的顺序逐步替换正交表上的中间节点,得到最终的正交表

    4.利用正交表每行数据构造测试用例
    正交表
    正交表的表示形式: Ln (t^c)其中: L为正交表的代号,n为行数(试验次数) , t为水平数,c为列数(因素数)

    水平数就是状态数,因素数就是有多少因子
    例如: L4(2^3), 它表示需做4次实验,最多可观察3个因素,每个因素均为2水平
    在这里插入图片描述
    一个正交表中也可以各列的水平数不相等,我们称它为混合型正交表,
    如L8(2^4 4^1)。
    (一共观察的有5个因素,有四个因素有两种结果,有一个因素有四种结果)
    在这里插入图片描述
    根据正交表的数据结构看出,正交表是一个n行c列的表,其中第j列由数码1, 2,tj组成,这些数码均各出现n/t次。(即因素的各个结果算是较均匀的出现的)

    如何查找正交表

    1. Technical Support (support.sas.com)
    http://support.sas.com/techsup/technote/ts723_Designs.txt
    有很多类型 选取需要的即可
    在这里插入图片描述

    2.查Dr. GenichiTaguchi设计的正交表,
    http://www.york.ac.uk/depts/maths/tables/orthogonal.htm

    3.数理统计、试验设计等方面的书及附录中
    关注点:因素数和对应的水平数组成的矩阵。

    正交实验法例子

    要测试支付宝web网站,该站点有大量的服务器和操作系统,并且有许多具有各种插件的浏览器需要考虑:
    ◆WEB浏览器: IE11、 chrome、 FireFox
    ◆插件:无、Flash、 支付宝插件
    ◆应用服务器: IS、 Apache、 Jetty
    ◆操作系统: Windows2000、Windows NT、Linux

    1.提取系统功能说明中的因子
    ◆WEB浏览器
    ◆插件
    ◆应用服务器
    ◆操作系统

    2.分析各因子的状态
    ◆插件:1=None、2=Flash、 3=支付宝插件
    ◆WEB浏览器: 1 =IE11、2=chrome、 3= FireFox
    ◆应用服务器: 1=IIS、 2=Apache、 3=Jetty
    ◆操作系统: 1=Windows2000、2=Windows NT、3=Linux

    3.选择正交表
    由于有4个因子,每个因子有三个状态,所以选择正交表水 平数为3,因素数为4。选择L9(3^4)
    在http://support.sas.com/techsup/technote/ts723_Designs.txt进行查找 得到
    在这里插入图片描述
    4.将因子和状态映射到上面的正交表中
    在这里插入图片描述
    (由于测试的因子等互相之间没什么联系影响,所以选择正交,并且如果上面这个例子用穷举法的话需要3^4=81次测试,太过于冗余,所以用正交表使用9次试验即可)

    2.场景法

    场景法原理.
    ◆现在的软件几乎都是 用事件触发来控制流程的。事件触发时的情景形成了场景,而 同一事件不同的触发顺序和处理结果就形成了事件流。
    ◆这种在软件设计方面的思想可以引入到软件测试中,可以生动地描绘出事件触发时的情景,有利于设计测试用例,同时使测试用例更容易理解和执行( 如何针对测试场景来设计测试用例

    分析思路:
    每条路径都反映了基本流和备选流;基本流是最简单的路径; 一个备选流可能自基本流开始,会有特定条件下加入并执行,可能有多种情况,可能重新加入基本流中(比如备选流1和3,就像是登陆的时候触发了邮箱注册,注册完又重新登录)也可能起源于另一个备选流(如备选流2),或者终止用例而不再重新加入到某个流(如备选流2和4);直黑线代表基本流,是 经过用例的最简单的路径
    使用场景
    (0代表基本流):0;0+1;0+1+2;0+3;0+3+1;0+3+1+2;0+4;0+3+4;…

    在这里插入图片描述
    场景法基础设计
    ◆每个经过用例的可能路径,可以确定不同的用例场景。
    ◆从基本流开始,再将基本流和备选流结合起来,可以确定以下用例场景:
    在这里插入图片描述核心思想

    把自己当成最终的用户,使用软件,设计出在使用软件过程中重要的操作,一般包括两类:	
    模拟用户完成正常功能、核心业务逻辑的动作,以验证功能的正确性
    模拟用户操作中出现的主要错误,以验证程序的异常处理能力
    

    场景法设计步骤
    ◆根据说明, 描述出程序的基本流及各项备选流
    ◆根据基本流和各项备选流 生成不同的场景
    ◆对每一个场景 生成相应的测试用例
    ◆对生成的所有测试用例 重新复审,去掉多余的测试用例,测试用例确定后,对每一个测试用例确定测试数据值

    场景法的使用要求:

    要对所测试的软件的业务逻辑、主要功能非常精通,比如测试游戏软件,要会玩游戏。如果连第一关都过不了,也就没办法继续测了。

    应用场合
    适合场景法的软件界面特点:没有太多填写项,所有的操作都是通过鼠标的点击、双击、拖拽等完成。(类似于:银行柜台操作界面、五子棋游戏,这些都是通过鼠标的点击、拖拽等来完成的。)

    例1–微信红包

    来源:
    https://www.bilibili.com/video/BV1Lx411X7Pk?from=search&seid=11615400887517131540
    在这里插入图片描述

    例2–淘宝网买东西

    ◆以淘宝网为例,我们都在淘宝上买过东西,整个购买过程为:
    ◆用户登录到网站后,进行商品的选择,当选好自己心仪的商品后进行购买,这时把所需商品放进购物车,等进行结帐的时候,用户需要登录自己注册的帐号,登录成功后,进行结帐并生成订单,整个购物过程结束。

    确定基本流和备选流:

    在这里插入图片描述根据基本流和备选流来确定场景:
    在这里插入图片描述

    展开全文
  • 正交实验法设计测试用例

    万次阅读 多人点赞 2018-11-13 15:31:10
    2 正交实验法3 利用正交实验设计测试用例的步骤:3.1 提取功能说明,构造因子--状态表3.2 加权筛选,生成因素分析表3.3 利用正交表构造测试数据集4 正交表的构成5 正交表的正交性5.1 整齐可比性5.2 均衡分散性二 用...

    一 正交实验法的由来

    1 正交表的由来

    1.1 拉丁方名称的由来

      古希腊是一个多民族的国家,国王在检阅臣民时要求每个方队中每行有一个民族代表,每列也要有一个民族的代表。
    数学家在设计方阵时,以每一个拉丁字母表示一个民族,所以设计的方阵称为拉丁方。

    1.2 什么是n阶拉丁方?

      用n个不同的拉丁字母排成一个n阶方阵(n<26 ),如果每行的n个字母均不相同,每列的n个字母均不相同,则称这种方阵为n*n拉丁方或n阶拉丁方。每个字母在任一行、任一列中只出现一次。

    1.3 什么是正交拉丁方?

      设有两个n阶的拉丁方,如果将它们叠合在一起,恰好出现n2个不同的有序数对,则称为这两个拉丁方为互相正交的拉丁方,简称正交拉丁方。
    例如:3阶拉丁方
      


    在这里插入图片描述
    图1 三阶拉丁方

    用数字代替拉丁方
    在这里插入图片描述

    2 正交实验法

      正交试验设计(Orthogonal experimental design)是研究多因素多水平的又一种设计方法,它是根据正交性从全面试验中挑选出部分有代表性的点进行试验,这些有代表性的点具备了“均匀分散,齐整可比”的特点,正交试验设计是分式析因设计的主要方法。是一种高效率、快速、经济的实验设计方法。
      日本著名的统计学家田口玄一将正交试验选择的水平组合列成表格,称为正交表。例如作一个三因素三水平的实验,按全面实验要求,须进行33=27种组合的实验,且尚未考虑每一组合的重复数。若按L9(33) 正交表按排实验,只需作9次,按L18(37) 正交表进行18次实验,显然大大减少了工作量。因而正交实验设计在很多领域的研究中已经得到广泛应用。
      利用因果图来设计测试用例时, 作为输入条件的原因与输出结果之间的因果关系,有时很难从软件需求规格说明中得到。往往因果关系非常庞大,以至于据此因果图而得到的测试用例数目多的惊人,给软件测试带来沉重的负担,为了有效地,合理地减少测试的工时与费用,可利用正交实验设计方法进行测试用例的设计。
      正交实验设计方法:依据Galois理论,从大量的(实验)数据(测试例)中挑选适量的、有代表性的点(例),从而合理地安排实验(测试)的一种科学实验设计方法。类似的方法有:聚类分析方法、因子方法方法等。

    3 利用正交实验设计测试用例的步骤:

    3.1 提取功能说明,构造因子–状态表

      把影响实验指标的条件称为因子,而影响实验因子的条件叫因子的状态。
      利用正交实验设计方法来设计测试用例时,首先要根据被测试软件的规格说明书找出影响其功能实现的操作对象和外部因素,把他们当作因子;而把各个因子的取值当作状态。对软件需求规格说明中的功能要求进行划分,把整体的、概要性的功能要求进行层层分解与展开,分解成具体的有相对独立性的、基本的功能要求。这样就可以把被测试软件中所有的因子都确定下来,并为确定每个因子的权值提供参考的依据。确定因子与状态是设计测试用例的关键。因此要求尽可能全面的、正确的确定取值,以确保测试用例的设计作到完整与有效。

    3.2 加权筛选,生成因素分析表

      对因子与状态的选择可按其重要程度分别加权。可根据各个因子及状态的作用大小、出现频率的大小以及测试的需要,确定权值的大小。

    3.3 利用正交表构造测试数据集

      利用正交实验设计方法设计测试用例,比使用等价类划分、边界值分析、因果图等方法有以下优点:节省测试工作工时;可控制生成的测试用例数量;测试用例具有一定的覆盖率。
      在使用正交实验法时,要考虑到被测系统中要准备测试的功能点,而这些功能点就是要获取的因子或因素,但每个功能点要输入的数据按等价类划分有多个,也就是每个因素的输入条件,即状态或水平值。

    4 正交表的构成

    • 行数(Runs):正交表中的行的个数,即试验的次数,也是我们通过正交实验法设计的测试用例的个数。
    • 因素数(Factors) :正交表中列的个数,即我们要测试的功能点。
    • 水平数(Levels):任何单个因素能够取得的值的最大个数。正交表中的包含的值为从0到数“水平数-1”或从1到“水平数” 。即要测试功能点的输入条件。

    正交表的形式:L()L_{行数}(水平数^{因素数}),如L8(27)L_8(2^7)
      


    在这里插入图片描述
    图2 正交表示例图

    5 正交表的正交性

    5.1 整齐可比性

      在同一张正交表中,每个因素的每个水平出现的次数是完全相同的。由于在试验中每个因素的每个水平与其它因素的每个水平参与试验的机率是完全相同的,这就保证在各个水平中最大程度的排除了其它因素水平的干扰。因而,能最有效地进行比较和作出展望,容易找到好的试验条件。

    5.2 均衡分散性

      在同一张正交表中,任意两列(两个因素)的水平搭配(横向形成的数字对)是完全相同的。这样就保证了试验条件均衡地分散在因素水平的完全组合之中,,因而具有很强的代表性,容易得到好的试验条件。

    二 用正交实验法设计测试用例

    以上介绍了正交实验法的由来。怎么用正交实验法进行用例的设计呢?

    1 用正交表设计测试用例的步骤

    • (1) 有哪些因素(变量)
    • (2) 每个因素有哪几个水平(变量的取值)
    • (3) 选择一个合适的正交表
    • (4) 把变量的值映射到表中
    • (5) 把每一行的各因素水平的组合做为一个测试用例
    • (6) 加上你认为可疑且没有在表中出现的组合

    2 如何选择正交表

    • 考虑因素(变量)的个数
    • 考虑因素水平(变量的取值)的个数
    • 考虑正交表的行数
    • 取行数最少的一个

    3 设计测试用例时的三种情况

    • (1)因素数(变量)、水平数(变量值)相符
    • (2)因素数不相同
    • (3)水平数不相同

    3.1 因素数与水平数刚好符合正交表

    我们举个例子
      


    在这里插入图片描述
    图3 个人信息查询系统

      这是个人信息查询系统中的一个窗口。我们可以看到要测试的控件有3个:姓名、身份证号码、手机号码,也就是要考虑的因素有三个;而每个因素里的状态有两个:填与不填。
    选择正交表时分析一下

    • 1.表中的因素数>=3;
    • 2.表中至少有3个因素数的水平数>=2;
    • 3.行数取最少的一个。
      从正交表公式中开始查找,结果为:L4(23)L_4(2^3)
      变量映射:
        

      在这里插入图片描述
      图4 L4(23)L_4(2^3) 正交表

    测试用例如下:

    1. 填写姓名、填写身份证号、填写手机号
    2. 填写姓名、不填身份证号、不填手机号
    3. 不填姓名、填写身份证号、不填手机号
    4. 不填姓名、不填身份证号、填写手机号

    增补测试用例
    5. 不填姓名、不填身份证号、不填手机号
      从测试用例可以看出:如果按每个因素两个水平数来考虑的话,需要8个测试用例,而通过正交实验法进行的测试用例只有5个,大大减少了测试用例数。用最小的测试用例集合去获取最大的测试覆盖率。

    3.2 因素数不相同

      如果因素数不同的话,可以采用包含的方法,在正交表公式中找到包含该情况的公式,如果有N个符合条件的公式,那么选取行数最少的公式。

    3.3 水平数不相同

      采用包含和组合的方法选取合适的正交表公式。

    4 正交法设计测试用例举例

      上面就正交实验法进行了讲解,现在再拿PowerPoint软件打印功能作为例子,希望能为大家更好地理解给方法的具体应用。
    假设功能描述如下:

    • 打印范围分:全部、当前幻灯片、给定范围 共三种情况;
    • 打印内容分:幻灯片、讲义、备注页、大纲视图 共四种方式;
    • 打印颜色/灰度分: 颜色、灰度、黑白 共三种设置;
    • 打印效果分:幻灯片加框和幻灯片不加框两种方式。

    因素状态表:

    状态/因素 A打印范围 B打印内容 C打印颜色/灰度 D打印效果
    0 全部 幻灯片 颜色 幻灯片加框
    1 当前幻灯片 讲义 灰度 幻灯片不加框
    2 给定范围 备注页 黑白
    3 大纲视图

    我们先将中文字转换成字母,便于设计。得到:
    因素状态表:

    状态/因素 A打印范围 B打印内容 C打印颜色/灰度 D打印效果
    0 A1 B1 C1 D1
    1 A2 B2 C2 D2
    2 A3 B3 C3
    3 B4

    我们分析一下:
    被测项目中一共有四个被测对象,每个被测对象的状态都不一样。
    选择正交表:

    • 1 表中的因素数>=4
    • 2 表中至少有4个因素的水平数>=2
    • 3 行数取最少的一个
      最后选中正交表公式:L16(45)L_{16}(4^5)
    A B C D E
    1 A1 B1 C1 D1 0
    2 A1 B2 C2 D2 1
    3 A1 B3 C3 2 2
    4 A1 B4 3 3 3
    5 A2 B1 C2 2 3
    6 A2 B2 C1 3 2
    7 A2 B3 3 D1 1
    8 A2 B4 C3 D2 0
    9 A3 B1 C3 3 1
    10 A3 B2 3 2 0
    11 A3 B3 C1 D2 3
    12 A3 B4 C2 D1 2
    13 3 B1 3 D2 2
    14 3 B2 C3 D1 3
    15 3 B3 C2 3 0
    16 3 B4 C1 2 1

    我们看到:
    第一列水平值为3、第三列水平值为3、第四列水平值3、2都需要由各自的字母替代。

    A B C D E
    1 A1 B1 C1 D1 0
    2 A1 B2 C2 D2 1
    3 A1 B3 C3 D1 2
    4 A1 B4 C1 D2 3
    5 A2 B1 C2 D1 3
    6 A2 B2 C1 D2 2
    7 A2 B3 C2 D1 1
    8 A2 B4 C3 D2 0
    9 A3 B1 C3 D1 1
    10 A3 B2 C3 D2 0
    11 A3 B3 C1 D2 3
    12 A3 B4 C2 D1 2
    13 A1 B1 C1 D2 2
    14 A2 B2 C3 D1 3
    15 A3 B3 C2 D2 0
    16 A1 B4 C1 D1 1

    第五列去掉没有意义。通过分析,由于四个因素里有三个的水平值小于3,所以从第13行到16行的测试用例可以忽略。
    那么这样的话,就可以有12个测试用例了。

    测试用例编号 PPT—ST—FUNCTION—PRINT—001
    测试项目 测试powerpoint打印功能
    测试标题 打印PowerPoint文件A全部的幻灯片,有颜色,加框
    重要级别
    预置条件 PowerPoint文件A已被打开,电脑主机已连接有效打印机
    输入 文件A:D:\系统测试.ppt
    操作步骤 1、打开打印界面;
    2、打印范围选择“全部”;
    3、打印内容选择“幻灯片”;
    4、颜色/灰度选择“颜色”;
    5、在“幻灯片加框”前打勾;
    6、点击“确定”。
    预期输出 打印出全部幻灯片,有颜色且已加框。
    测试用例编号 PPT—ST—FUNCTION—PRINT—002
    测试项目 测试powerpoint打印功能
    测试标题 打印PowerPoint文件A全部的幻灯片为讲义,灰度,不加框
    重要级别
    预置条件 PowerPoint文件A已被打开,电脑主机已连接有效打印机
    输入 文件A:D:\系统测试.ppt
    操作步骤 1、打开打印界面;
    2、打印范围选择“全部”;
    3、打印内容选择“讲义”;
    4、颜色/灰度选择“灰度”;
    5、点击“确定”。
    预期输出 打印出全部幻灯片为讲义,灰度且不加框。
    测试用例编号 PPT—ST—FUNCTION—PRINT—003
    测试项目 测试powerpoint打印功能
    测试标题 打印PowerPoint文件A全部的备注页,黑白,加框
    重要级别
    预置条件 PowerPoint文件A已被打开,电脑主机已连接有效打印机
    输入 文件A:D:\系统测试.ppt
    操作步骤 1、打开打印界面;
    2、打印范围选择“全部”;
    3、打印内容选择“备注页”;
    4、颜色/灰度选择“黑白”;
    5、在“幻灯片加框”前打勾;
    6、点击“确定”。
    预期输出 打印出全部备注页,黑白且已加框。

    其他测试用例参考上述测试用例来设计。

    展开全文
  • 参考论文[1]进行误差评估实验,但是由于论文中的评定指标并不都适合本次实验,所以要重新考虑哪些变量可以 作为判断三点求三维坐标是否精确的指标,哪些不能。经过可操作性等考虑之后,选取了3维中的距离和空间 角...
  • STM32实例-按键控制实验

    千次阅读 2019-09-27 16:16:43
    前几章我们介绍的都是 IO 口输出的使用,这一章我们通过按键控制实验来介绍下 IO 口作为输入的使用。本章所要实现的功能是:通过开发板上的 4 个按键控制 LED。 按键介绍 按键是一种电子开关, 使用时轻轻按开关...
  • 利用KingbaseES及其交互式查询工具ISQLW来熟悉SQL。 3实验内容和要求 使用SQL对数据进行完整性控制(3类完整性、CHECK短语、CONSTRAIN子句、触发器)。用实验证实,当操作违反了完整性约束条件时,系统是如何...
  • 用正交实验法设计测试用例

    万次阅读 多人点赞 2016-10-14 10:12:10
    正交实验法的由来 一、正交表的由来 拉丁方名称的由来 古希腊是一个多民族的国家,国王在检阅臣民时要求每个方队中每行有一个民族代表,每列也要有一个民族的代表。 数学家在设计方阵时,以每一个拉丁字母表示...
  • 案例背景或目标:激素水平是否在对照组和实验组之间存在...基本思路:控制变量法,首先排除性别,年龄,萎缩程度,胃粘膜细胞肠化生程度的影响; 探索性数据分析:观察样本量,样本的分布,是否存在偏态分不等; ...
  • 编译原理实验二 LL(1)分析

    千次阅读 2019-11-27 21:43:02
    实验二 LL(1)分析 通过完成预测分析的语法分析程序,了解预测分析和递归子程序的区 别和联系。使学生了解语法分析的功能,掌握语法分析程序设计的原理和构造方 ,训练学生掌握开发应用程序的基本方法。...
  • 软件测试中用正交实验法设计测试用例 正交实验法的由来 一、正交表的由来 拉丁方名称的由来 古希腊是一个多民族的国家,国王在检阅臣民时要求每个方队中每行有一个民族代表,每列也要有一个民族的代表。 数学家在...
  • 编译原理 实验三 LR(1)分析 Java

    千次阅读 2020-02-15 15:51:49
    构造 LR(1)分析程序,利用它进行语法分析,判断给出的符号串是否为该文法识别的句子,了解 LR(K)分析方法是严格的从左向右扫描,和自底向上的语法分析方法。 2.实验内容 对下列文法,用 LR(1)分析对任意输入...
  • 黑盒测试方法四(正交实验法

    千次阅读 2017-06-19 15:52:34
    正交实验法 正交试验设计(Orthogonal experimental design)是研究多因素多水平的又一种设计方法,它是根据正交性从全面试验中挑选出部分有代表性的点进行试验,这些有代表性的点具备了“均匀分散,齐整可比”的特点...
  • elmo驱动器具有很强大的功能,之前只接触到ARM板控制,因需要使用PLC,通过一个月琳琳散散的攻克也只拿下部分,作为控制电机基本上满足实验室需要。关于emlo驱动器的相关电子档编程手册、硬件介绍和maxon电机的选型...
  • python实验

    千次阅读 2019-11-04 12:42:40
    实验二:Python程序设计之结构与复用 一.实验目的 1.掌握程序的分支、循环等控制结构; 2.掌握random随机库的使用方法; 3.了解程序的异常处理及用法; 4.掌握函数的定义和调用方法。 二.知识要点 1.程序控制...
  • 论文研读-基于决策变量分析的大规模多目标进化算法 Multiobjective Evolutionary Algorithm Based on Decision Variable Analyses for Multiobjective Optimization Problems With Large-Scale Variables 觉得有用的...
  • 有序/无序分类变量的统计推断

    千次阅读 2020-08-04 19:22:47
    有序/无序分类变量的统计推断1 有序分类变量的统计推断——非参数检验1.1 非参数检验概述1.2 两个配对样本的非参数检验1.3 两个独立样本的非参数检验1.4 多个独立样本的非参数检验1.5 多个配对样本的非参数检验2 ...
  • 多重对应分析在超过两个以上定类变量时有时候非常有效,当然首先我们要理解并思考,如果只有三个或有限的几个变量完全可以通过数据变换和交互表变量重组可以转换成两个定类变量,这时候就可以用简单对应分析了。...
  • 1. 遵循循环设计策略来开发循环,使用标记值控制循环。 2. 使用for语句编写循环。 3. 了解三种类型循环语句的相似处和不同点,编写嵌套循环。 4. 学习最小化数值误差的技术。 5. 从各种例子中学习循环...
  • 数值计算——线性方程组的迭代

    万次阅读 2017-03-30 16:53:36
    数值计算——线性方程组的迭代 与上一篇中的直接相比,迭代是从解的一个初始估计值除,逐步对他进行改进,知道到达所需的精度,...确定迭代变量:在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断
  • 实验设计中的问题和解决方案鸟枪宏基因组学研究方案设计样本采集和DNA提取表1. 在测序之前富集微生物细胞和DNA方法的优点和局限性文库制备和测序宏基因组拼接表2. 基于已知成份的模拟群落评估宏基因组拼接表3. ...
  • 模糊控制介绍

    千次阅读 2006-04-28 09:28:00
    模糊控制介绍一、模糊控制概况 模糊逻辑控制 (Fuzzy Logic Control)简称模糊控制(Fuzzy Control),是以模糊集合论、模糊语言变量和模糊逻辑推理为基础的一种计算机数字控制技术。1965年,美国的L.A.Zadeh创立了模糊...
  • 使用了相同的API,因此我们不需要停下来绞尽脑汁地思考哪些参数是用来控制线条、哪些参数是用来控制散点。 使用不同的参数会决定我们的数据如何聚合。比如,增加一个具有两个水平的分类变量作为 hue 参数,会将...
  • 转载, 太经典了,学习了 ...当因变量是非时间的连续性变量(自变量可包括连续性的和离散性的)时,欲研究变量之间的依存关系,多元线性回归分析是一个有力的研究工具。  多元回归分析的任务就是用数理统计方...
  • 今日做一实验,遇一题,要求绘制“吸附...(控制变量法,研究等温/等压条件下特性) 也即是我上边给出的表格要绘制的图形。 这种图形的绘制和上边 X-Y图形步骤一致。 补充一点: 如何写入函数,根据其中一列,让...
  • 其他控制变量 的 交乘项 ,然后再 联合检验 分组变量的系数以及所有交乘项的系数是否都等于0。此时,即使我们不使用 chowtest 命令,也可以轻松实现 邹氏检验 ,Stata命令如下: . global xx "hours age tenure ...
  • 文章目录2-1 控制系统的时域数学模型2.1.1 两种建立数学模型的方法2.1.2 数学模型的分类2.1.3 线性元件的微分方程例1例2例3...实验法(系统辨识) 对系统加输入,得输出,通过输入输出数据估算出系统的数学模型。适.
  • 单片机实验

    千次阅读 2019-06-09 19:44:40
    实验二 基础实验 一、实验题目: (汇编)若0-5号键的键值分别是:EEH、DEH、BEH、7EH、EDH、DDH。设键值存放在内部RAM 20H单元中,编程实现根据2OH中的键值分别使程序转移到PR0-PR4程序段。要求当以上程序段的功能...
  • 模糊控制

    千次阅读 2019-03-25 17:34:36
    然而,对于复杂的系统,由于变量太多,往往难以正确的描述系统的动态,于是工程师便利用各种方法来简化系统动态,以达成控制的目的,但却不尽理想。换言之,传统的控制理论对于明确系统有强而有力的控制能力,但对于...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 17,435
精华内容 6,974
关键字:

利用控制变量法的实验