美文网首页
2018年下半年【软件评测师】考试下午真题

2018年下半年【软件评测师】考试下午真题

作者: nayli | 来源:发表于2020-03-05 08:55 被阅读0次

    1、 阅读下列 C 程序,回答问题 1 至问题 3,将解答填入答题纸的对应栏内。
    【C程序】

    static void permute_args(int panonopt_start,int panonopt_end,int opt_end,int ncycle){
        int cstart,cyclelen,i,j,nnonopts,nopts,pos;                                //1
    
        nnonopts = panonopt_end - panonopt_start;
        nopts = opt_end - panonopt_end;
        cyclelen = (opt_end - panonopt_start) / ncycle;
    
        for(i = 0;i < ncycle;i++){                                                 //2
            cstart = panonopt_end + i;                                             //3
            pos = cstart; 
            for(j = 0;j < cyclelen;j++){                                           //4
                 if(pos >= panonopt_end)                                           //5
                      pos -= nnonpts;                                              //6
                 else
                      pos += nopts;                                                //7
                }
            }
    }                                                                              //8
    
    

    【问题1】(3分)
    请针对上述 C 程序给出满足 100%DC(判定覆盖)所需的逻辑条件。

    【问题2】(8分)
    请画出上述程序的控制流图,并计算其控制流图的环路复杂度 V(G)。

    【问题3】(4分)
    请给出问题 2 中控制流图的线性无关路径。

    2、阅读下列说明,回答问题 1 至问题 2,将解答填入答题纸的对应栏内。
    【说明】
    某连锁酒店集团实行积分奖励计划,会员每次入住集团旗下酒店均可以获得一定积分,积分由欢迎积分加消费积分构成。其中欢迎积分跟酒店等级有关,具体标准如表 2-1 所示;消费积分跟每次入住消费金额有关,具体标准为每消费 1 元获得 2 积分(不足 1 元的部分不给分)。此外,集团会员分为优先会员、金会员、白金会员三个级别,金会员和白金会员在入住酒店时可获得消费积分的额外奖励,奖励规则如表 2-2 所示。


    image.png

    该酒店集团开发了一个程序来计算会员每次入住后所累积的积分,程序的输入包括会员级别L、酒店等级 C 和消费金额 A(单位:元),程序的输出为本次积分 S。其中,L 为单个字母且大小写不敏感,C 为取值 1 到 6 的整数,A 为正浮点数且最多保留两位小数,S 为整数。
    【问题 1】(7 分)
    采用等价类划分法对该程序进行测试,等价类表如表 2-3 所示,请补充表 2-3 中空(1)-(7)。


    image.png

    【问题 2】(13 分)
    根据以上等价类表设计的测试用例如下表所示,请补充表 2-4 中空(1)-(13)。


    image.png

    3、阅读下列说明,回答问题 1 至问题 3,将解答填入答题纸的对应栏内。
    【说明】
    某公司欲开发一套基于 Web 的房屋中介系统,以有效管理房源和客户,提升成交效率。该系统的主要功能是:
    (1)房源管理。员工或客户对客户拟出售/出租的意向房进行登记和管理。
    (2)客户管理。员工对客户信息进行管理,支持客户交互。
    (3)房源推荐。根据客户的需求和房源情况,进行房源推荐。
    (4)交易管理。对租售客户双方进行交易管理,收取中介费,更改客户状态。
    【问题 1】 (6 分)
    系统前端采用 HTML5 实现,以使用户可以通过电脑和不同移动设备的浏览器进行访问。请设计兼容性测试矩阵,对系统浏览器兼容性进行测试。

    【问题 2】 (8 分)
    客户交易时,前端采用表单提交价格(正整数,单位:元)和中介费比例(0 到 1 之间的小数,保留小数点后 2 位),针对这一功能设计 4 个测试用例。

    【问题 3】 (6 分)
    采用性能测试工具在对系统性能测试时,采用 Apdex(应用性能指数)对用户使用该系统的性能满意度进行度量,系统需要满足的 Apdex 指数为 0.85以上。
    Apdex 量化时,对应的用户满意度分为三个区间,通过响应时间阈值(Threshold)T 来划分,Apdex 的用户满意度区间如下:
    满意:(0,T],让用户感到很愉快
    容忍: (T,4T],慢了一点,但还可以接受,继续这一应用过程
    失望:高于 4T,太慢了,受不了,用户决定放弃这个应用

    Apdex 的计算入如下:
    Apdex= (满意的样本数+容忍的样本数/2) / 总样本数

    针对用户功能,本系统设定 T=2 秒,记录响应时间,统计样本数量,2 秒以下记录数 4000,2~8 秒记录数 1000,大于 8 秒 500。
    请计算本系统的 Apdex 指数,并说明本系统是否到达要求。

    4、阅读下列说明,回答问题 1 至问题 3,将解答写在答题纸的对应栏内。
    【说明】
    某软件的积分计算模块每天定时根据用户发布的文章数、文章阅读数来统计用户所获取的积分,用户分为普通用户和专家用户,两类用户具有不同的积分系数。
    图 4-1 是该模块的类图,图中属性和操作前的“+”、“#”和“-”分别表示公有成员、保护成员和私有成员。

    image.png
    其中:
    (1)类 Expert 重新实现了类 User 的方法 calPoints__(4);
    (2)方法 calPoints
    (5)根据每个用户每天的文章数(articleNum)、文章阅读数(readNum)来计算当天的积分;
    (3)类 System 中的方法 statPoints
    (6)中首先调用了该类的方法 load(7),获取本系统用户列表,然后调用了类 User 中的方法 calPoints(8)__。
    现拟采用面向对象的方法进行测试。
    【问题 1】(4 分)
    (1)图 4-1 所示的类图中,类 System 和 User 之间是什么关系?
    (2)类 Expert 重新实现了类 User 的方法 calPoints(),这是面向对象的什么机制?

    【问题 2】 (6 分)
    类 Expert 中的方法 calPoints()和 getPoints()是否需要重新测试?

    【问题 3】 (10 分)
    (1)请结合题干说明中的描述,给出测试类 User 方法 calPoints()时的测试序列。
    (2)从面向对象多态特性考虑,测试类 System 中方法 statPoints()时应注意什么?
    (3)请给出图 4-1 中各个类的测试顺序。

    5、阅读下列说明,回答问题 1 至问题 3,将解答填入答题纸的对应栏内。
    【说明】
    某智能家居系统软件设计中,家庭内网节点软件设计包括协调器软件、现场采集/执行器(室内温湿度采集节点、模拟台灯控制节点、模拟雨水窗户监控节点、模拟空调控制节点和火灾监测节点)的软件设计。软件功能组成如图 5-1 所示。


    image.png

    整个系统中,协调器是整个家庭内网的核心和起点,负责管理各个节点设备与
    PC 网关的信息和控制指令的传输。温湿度采集终端将传感器的数据以点播的形式
    发送给协调器,其他采集/控制节点以广播的形式与协调器进行数据的交换,协调
    器和 PC 机采用串口通信协议。协调器软件主要完成以下功能:
    (1)创建信道,组建网络;如果失败,则继续创建;
    (2)组建网络成功,则进行各层事件扫描;
    (3)如果检测到应用层有事件,则转第(4)步,否则反复扫描各层事件;
    (4)判断数据类型, 如果是室内环境数据,则经串口发送到网关;如果是控制指令,则向控制节点发送控制指令;如果前面两者均不是,则不处理;
    (5)继续扫描各层事件。

    【问题 1】 (4 分)
    在本软件开发过程中,开发人员使用了基于模型的嵌入式代码生成技术,目前对模型验证最主要的方法是(1)。通过此方法验证后,利用此验证结果可对模型的覆盖率进行分析,模型的覆盖率类型一般包括(2) (至少写出两种类型)。
    (1)备选项:
    A.评审 B.分析 C.仿真 D.测试

    【问题 2】 (10 分)
    为了测试此软件功能,测试人员设计了表 5-1 所示的测试用例,请填写该表中的空(1) ~ (5)。


    image.png

    【问题 3】 (6 分)
    覆盖率是度量测试完整性和测试有效性的一个指标。在嵌入式软件白盒测试过程中,通常以语句覆盖率、条件覆盖率和MC/DC覆盖率作为度量指标。
    在实现第4条功能时,设计人员采用了下列算法:
    if (( 数据有效==TRUE) && (数据类型==室内环境数据))
    { 数据经串口发送到网关; }
    if ((数据有效==TRUE) && ( 数据类型==控制指令))
    { 向控制节点发送控制指令; }
    请指出对上述算法达到 100%语句覆盖、100%条件覆盖和100%MC/DC 覆盖所需的最少测试用例数目,并填写在表 5-2 的空(1)~ (3)中。


    image.png

    相关文章

      网友评论

          本文标题:2018年下半年【软件评测师】考试下午真题

          本文链接:https://www.haomeiwen.com/subject/qxxkqctx.html