深圳大学 软件测试作业 #2

声明:本人上课摆烂选手,稍微听了下,答案仅供参考。

————————

1. 考虑下面这个代码,并回答以下的问题。

(a) 请画出上面代码的控制流程图。(20分)

(b) 请画出上面代码的数据流程图。(10分)

(c) 找出每个变量的定义使用对。(10分)

(d) 根据全定义使用覆盖准则,为变量sq_dist_value找出所有覆盖路径。(10分)

GPT给出答案:

一、
(a)控制流程图
+---------------------+
| Initialize variables|
+---------------------+
          |
          v
+-------------------------+
| Loop i from 0 to n-1    |
+-------------------------+
          |
          v
+----------------------------------------+
| Compute sq_dist_value and dist_value   |
+----------------------------------------+
          |
          v
+----------------------+
| dist_value < bandwidth|
+----------------------+
         / \
       /     \
    Yes      No
     |        |
     v        v
+---------------------------+
| Select kernel type and    |
| update density_value      |
+---------------------------+
          |
          v
+------------------+
| Return density_value |
+------------------+

(b) 数据流程图
+--------+
| Input  |
| data   |
| n      |
| bandwidth|
| kernel_type|
+--------+
     |
     v
+----------------+
| Initialize     |
| variables      |
+----------------+
     |
     v
+--------------+
| For loop     |
| (i=0 to n-1) |
+--------------+
     |
     v
+--------------------+
| Compute            |
| sq_dist_value      |
| dist_value         |
+--------------------+
     |
     v
+---------------------+
| Check bandwidth     |
| and update          |
| density_value       |
+---------------------+
     |
     v
+--------+
| Output |
| density_value|
+--------+

(c)变量定义使用对

density_value

定义:double density_value = 0
使用:返回值return density_value; 以及在计算过程中 density_value += ...

sq_dist_value

定义:double sq_dist_value;
使用:sq_dist_value = ... 以及在各个核函数计算过程中

dist_value

定义:double dist_value;
使用:dist_value = Math.sqrt(sq_dist_value); 以及在三角形核函数和指数核函数计算中

temp_value

定义:double temp_value;
使用:temp_value = ... 以及在四次核函数计算中

(d) 全定义使用覆盖路径
变量 sq_dist_value 的定义使用覆盖路径:
1.定义:sq_dist_value = (data[i][0] - g[0]) * (data[i][0] - g[0]) + (data[i][1] - g[1]) * (data[i][1] - g[1])
2.使用:
dist_value = Math.sqrt(sq_dist_value)
density_value += ... (根据不同的 kernel_type,有不同的使用形式)

因此,sq_dist_value 的覆盖路径包括:
1.计算 sq_dist_value
2.使用 sq_dist_value 计算 dist_value
3.在每种 kernel_type 的条件下使用 sq_dist_value 更新 density_value

2. 考虑以下的逻辑谓词,判断a、b和c那个是主子句,并给出解释。

(a) p1 = ~a ∧ ~b ∧ c (10分)

(b) p2 = b ∧ (a ^ c) ∧ (a ↔ c) (10分) (备注:在这个问题中,没有解释的答案是 0 分。) 

二、

主子句定义:

  1. 写出逻辑谓词真值表:(1为true,即T;0为false即F)

框柱部分,a和b取值不变,改变c的取值,逻辑谓词随之改变。并且c为真时逻辑谓词为真,c为假时逻辑谓词为假(c决定了逻辑谓词取值),所以c是主子句。

不存在其他主子句。

(2)双条件(↔)运算符:a ↔c 表示 a 和 c必须同时为真或同时为假。

这是个合取范式,需要同时为真,逻辑谓词才会为真。可是第二项a,c异或需要ac相异才能为真,而第三项却要求ac相同。所以整个式子永远为假。所以不存在主子句能决定逻辑谓词取值。

3. 给定了逻辑谓词p = ((a ^ c) ∨ b) ^ d及其主子句a,给出:

(a) 广义有效子句覆盖的测试需求。(10分)

(b) 限制性有效子句覆盖的测试需求。(10分) (

c) 相关性有效子句覆盖的测试需求。 (10分) (备注:在这个问题中,没有步骤(如:没有列出条件和条件对)的答案是0分。)

三:

  1. 广义有效子句覆盖,只需要先找出主子句,然后根据逻辑谓词不同来任意组合即可:

(5 , 13)和(8 , 16)中a是有效字句。

所以广义有效子句覆盖的测试需求为:

(5,13),(5,16),(8,13),(8,16)

(b)其实上面中(5 , 13)和(8 , 16)就是限制性有效子句覆盖的测试需求。

限制性有效子句覆盖的定义:

(c)相关性有效子句覆盖定义:

根据定义,接着寻找符合的测试需求对。

除了上面的(5,13),(5,16),(8,13),(8,16)

还有(6,14),(7,15),这两项再任意组合:

(6,14),(6,15),(6,15),(7,15)

所以相关性有效子句覆盖的测试需求为:(5,13),(5,16),(8,13),(8,16),

(6,14),(6,15),(6,15),(7,15)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/745170.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

说点智驾领域的实话!感知|定位|规划控制|就业……

你们有没有一种感觉&#xff0c;近几年自动驾驶技术栈迭代太快&#xff0c;自己稍不留神就与当下主流技术产生脱节了。 其实说实话&#xff0c;并非只有你如此&#xff0c;行业内的工程师都有类似感受。 智能驾驶行业交流群&#xff1a;点击进 分享几个我们最近聊天中的几位朋…

低代码平台如何重塑项目管理:效率与创新的新边界

引言 随着数字化转型的加速和技术创新的推动&#xff0c;低代码开发平台在近年来逐渐崭露头角&#xff0c;成为企业和组织加速应用开发和创新的重要工具。低代码平台通过提供可视化的开发环境和预构建的组件&#xff0c;极大地简化了应用程序的开发过程&#xff0c;使非专业开发…

Vmvare12安装CentOS7.6

Vmvare12安装 注意事项 安装完成以后有这两个虚拟网卡。 CentOS官网镜像地址 https://www.centos.org/download/mirrors/Vmvare安装CentOS7.6 创建虚拟机 安装CentOS7.6 选择桌面版 磁盘分区 上述是确认使用自动分区。 设置密码 设置license information 欢迎页面 CentOS7…

windows 安装 Kubernetes(k8s)

windows 安装 docker 详情见&#xff1a; https://blog.csdn.net/sinat_32502451/article/details/133026301 minikube Minikube 是一种轻量级的Kubernetes 实现&#xff0c;可在本地计算机上创建VM 并部署仅包含一个节点的简单集群。 下载地址&#xff1a;https://github.…

每日一题——Python实现PAT乙级1030 完美数列(举一反三+思想解读+逐步优化)五千字好文

一个认为一切根源都是“自己不够强”的INTJ 个人主页&#xff1a;用哲学编程-CSDN博客专栏&#xff1a;每日一题——举一反三Python编程学习Python内置函数 Python-3.12.0文档解读 目录 初次尝试 再次尝试 代码结构 时间复杂度分析 空间复杂度分析 总结 我要更强 时…

《互联网政务应用安全管理规定》深度解读

《互联网政务应用安全管理规定》的出台&#xff0c;对互联网政务应用的安全提出了一系列具体要求。 2024年5月15日&#xff0c;中央网信办、中央编办、工业和信息化部、公安部等四部门联合公布《互联网政务应用安全管理规定》&#xff08;以下称《规定》&#xff09;&#xff…

手机pdf删除怎么办?只需要2招,就可以快速恢复耶

PDF文件&#xff0c;这个我们日常生活中的常客&#xff0c;越来越受到大家的喜爱。但是&#xff0c;有时候我们会因为一时的疏忽或者清理手机内存而不小心删掉了重要的PDF文件&#xff0c;这可真是让人头疼啊&#xff01;那么&#xff0c;这些pdf删除后&#xff0c;有没有什么好…

一年半测试|17K|商汤科技4轮面经

面经哥只做互联网社招面试经历分享&#xff0c;关注我&#xff0c;每日推送精选面经&#xff0c;面试前&#xff0c;先找面经哥 背景‍‍ 楼主本科&#xff0c;大概一年半工作经验。 之前工作也是测试岗&#xff0c;离职了三个多月再次刷题面试&#xff0c;大概花了一个月准备…

Java露营基地预约小程序预约下单系统源码

轻松开启户外探险之旅 &#x1f31f; 露营热潮来袭&#xff0c;你准备好了吗&#xff1f; 随着人们对户外生活的热爱日益增加&#xff0c;露营已成为许多人周末和假期的首选活动。但你是否曾因找不到合适的露营基地而烦恼&#xff1f;或是因为繁琐的预约流程而错失心仪的营地…

OElove 婚恋系统 v10.2升级真是及时,你们是不是UI团队换了?不得不说这次UI是真美!当然功能也升级了大大的赞!

怎么说呢&#xff0c;成为OE的老用户已经有五年了&#xff0c;当时买的初衷就是在本地做一个响当当的门户但是因为疫情搁浅了。。。实在是入不敷出&#xff01;转行的这几年又看好了婚恋这个行业于是打算冲头再来&#xff0c;我记得我当时还是8.5&#xff0c;功能比较强大就是太…

联邦学习——学习笔记2:联邦学习×资源受限下的自适应本地迭代次数

文章目录 一、符号二、应用场景三、与FedAvg算法区别 本笔记参考自b站up主&#xff1a;丸一口 论文参考自Adaptive Federated Learning in Resource Constrained Edge Computing Systems 原视频链接 一、符号 原文的符号解释如下图绿色字体所注 二、应用场景 就是在资源小…

数据结构历年考研真题对应知识点(栈)

目录 3.1栈 3.1.1栈的基本概念 【栈的特点&#xff08;2017&#xff09;】 【入栈序列和出栈序列之间的关系(2022)】 【特定条件下的出栈序列分析(2010、2011、2013、2018、2020)】 3.1.2栈的顺序存储结构 【出/入栈操作的模拟(2009)】 3.1栈 3.1.1栈的基本概念 【栈…

视觉与运动控制6

基于驱动器的控制功能 驱动器的系统性能和运算能力有限需要单独的运动控制器。 V/F恒压频比控制 开环控制方法&#xff0c;应用最广泛、最简单&#xff0c;只需要电机数据即可。适用于控制精度和动态响应要求不高的应用。控制原理&#xff1a;保持点击内磁通量恒定&#xff…

Rocketmq在单节点情况下新增从节点

Rocketmq在单节点情况下新增从节点 在docker-compose部署rocketmq单节点的基础上&#xff0c;新增一个从节点 一&#xff0c;修改docker-compose配置文件 原docker-compose文件 version: 3.5 services:rmqnamesrv:image: foxiswho/rocketmq:server-4.5.2container_name: rm…

CST软件中滤波器中外部耦合偏小怎么办

在电磁仿真领域&#xff0c;CST Studio Suite&#xff08;CST 工作室套装&#xff09;软件以其强大的功能和易用性而广受工程师和科研人员的青睐。然而&#xff0c;在使用CST软件进行滤波器设计时&#xff0c;有时会遇到外部耦合偏小的问题&#xff0c;这可能导致滤波器的性能不…

已解决java.security.GeneralSecurityException: 安全性相关的通用异常的正确解决方法,亲测有效!!!

已解决java.security.GeneralSecurityException: 安全性相关的通用异常的正确解决方法&#xff0c;亲测有效&#xff01;&#xff01;&#xff01; 目录 问题分析 报错原因 解决思路 解决方法 确定具体异常类型 检查输入参数 验证算法支持性 调整安全策略 确保资源可…

[深度学习] 自编码器Autoencoder

自编码器&#xff08;Autoencoder&#xff09;是一种无监督学习算法&#xff0c;主要用于数据的降维、特征提取和数据重建。自编码器由两个主要部分组成&#xff1a;编码器&#xff08;Encoder&#xff09;和解码器&#xff08;Decoder&#xff09;。其基本思想是将输入数据映射…

ROS2从入门到精通2-2:详解机器人3D可视化工具Rviz2与案例分析

目录 0 专栏介绍1 什么是Rviz2&#xff1f;2 Rviz2基本界面3 Rviz2基本数据类型4 数据可视化案例4.1 实例1&#xff1a;显示USB摄像头数据4.2 实例2&#xff1a;显示球体 0 专栏介绍 本专栏旨在通过对ROS2的系统学习&#xff0c;掌握ROS2底层基本分布式原理&#xff0c;并具有…

python turtle 001画两只小狗

效果图&#xff1a; 代码&#xff1a; pythonturtle001画两只小狗资源-CSDN文库 # 作者V w1933423import turtle # 导入turtle模块def draw_dogs():turtle.setup(800, 800) # 设置画布大小为800x800p turtle.Pen() # 创建一个画笔对象p.pensize(14) # 设置画笔大小为14p.…

【PL理论深化】(7) Ocaml 语言:静态类型语言 | 自动类型推断 | 多态类型和多态函数 | let-多态类型系统

&#x1f4ac; 写在前面&#xff1a;OCaml 是一种拥有静态类型系统的语言&#xff0c;本章我们就要探讨静态类型系统。 目录 0x00 静态类型系统 0x01 自动类型推断&#xff08;automatic type inference&#xff09; 0x02 多态类型和多态函数 0x03 let-多态类型系统&#…