《软件测试》实验 1:开发者测试实验报告

news/2024/7/7 23:54:26

文章目录

  • 实验目的
  • 实验环境
  • 实验内容
    • 安装Eclipse
    • 测试代码
    • 分析和总结

实验目的

理解和掌握使用 Eclemma 软件测试工具对 Java 语言编写的程序进行语句覆盖测试。

实验环境

装有 Eclipse 的计算机。

实验内容

安装Eclipse

下载地址

  1. 点击 Download Packages
    在这里插入图片描述

  2. 根据操作系统和所需的软件点击相应的下载链接
    在这里插入图片描述

  3. 可以根据网络环境更换镜像地址,我挂了梯子所以直接下载就可以
    在这里插入图片描述
    没有梯子的话,点击Show all 是会显示在国内大连东软信息学院的镜像
    在这里插入图片描述

  4. 选择镜像地址之后就会进入这个捐赠界面,然后就会开始下载
    在这里插入图片描述
    如果没有开始下载,点击这里就可以开始下载
    在这里插入图片描述

  5. 下载好压缩包后解压,注意路径中不能有中文
    在这里插入图片描述

  6. 点击运行
    在这里插入图片描述

  7. 选择项目默认的新建目录,然后点 Launch
    在这里插入图片描述

  8. 点击 Help,选择 Install New Software
    在这里插入图片描述

在这里插入图片描述
9. 点击 Add
在这里插入图片描述
粘贴这个网址到 Location ,Name 随便起一个名字,然后点Add

 https://download.eclipse.org/technology/babel/update-site/latest/

在这里插入图片描述
如果有梯子的话,设置一下代理
在这里插入图片描述
等待一会,会出现语言包的下载选项,勾选简体中文的语言包然后点击 Next
在这里插入图片描述
继续Next
在这里插入图片描述
accept然后finish
在这里插入图片描述
下面就会出现安装的进度条
在这里插入图片描述
打勾后点击Trust
在这里插入图片描述
最后重启
在这里插入图片描述
官方的语言包做的不完整,所以软件打开后还会有很多地方是英文

测试代码

  1. 创建一个新项目Nextday,将源代码放到src下,然后点击“下一步”
    在这里插入图片描述
    点击“完成”
    在这里插入图片描述

  2. 右键src,新建一个包,然后把代码放到包中
    在这里插入图片描述

  3. 在包中写好测试代码

package net.mooctest;

import org.junit.Assert;
import org.junit.Test;

public class DemoTest {

	@Test
	public void test() {
		Date date1 = new Date(12, 5, 2029);
		Date date2 = new Date(12, 5, 2029);
		Date date3 = new Date(12, 31, 2019);
		Date date4 = new Date(2, 28, 2020);
		Date date5 = new Date(3, 31, 2020);
		Year year1 = new Year(2019);
		Month month = new Month(1, year1);
		Day day = new Day(1, month);
		Nextday next = new Nextday();

		// test date
		Assert.assertTrue(date1.equals(date2));
		Assert.assertFalse(date1.equals(date3));
		Assert.assertFalse(date1.equals(year1));
		System.out.println(Nextday.nextDay(date1));
		Nextday.nextDay(date3);
		Nextday.nextDay(date4);
		Nextday.nextDay(date5);
		date1.printDate();
		Assert.assertFalse(month.equals(1));
		Assert.assertFalse(day.equals(1));

		try {
			Date date6 = new Date(1, 1, 0);
		} catch (IllegalArgumentException e) {
			e.getMessage();
		}
		try {
			Date date7 = new Date(1, 1, -1);
			Assert.assertTrue(date7.getYear().increment());
		} catch (Exception e) {
			Assert.assertTrue(e instanceof IllegalArgumentException);
		}
		try {
			Month month1 = new Month(0, year1);
			Month month2 = new Month(1, year1);
			Assert.assertFalse(month2.equals(date1));
			Assert.assertFalse(month2.equals(month1));
		} catch (Exception e) {
			Assert.assertTrue(e instanceof IllegalArgumentException);
		}
		try {
			Month month1 = new Month(1, year1);
			Day day1 = new Day(-1, month1);
			Assert.assertTrue(day1.equals(1));
		} catch (Exception e) {
			Assert.assertTrue(e instanceof IllegalArgumentException);
		}
	}

}

  1. 配置Coverage
    在这里插入图片描述
    在这里插入图片描述
    配置好后点击“应用”,然后点击Coverage,在下方可以看到结果
    在这里插入图片描述

分析和总结

  1. 在源码Year.java中,第十行应该是“Not a valid year”而不是“Not a valid month”
  2. 源码中应该包含注释,没有任何注释不符合规范

http://lihuaxi.xjx100.cn/news/67699.html

相关文章

python专区--异常

目录异常什么是异常Python 中的异常python 中异常演示错误类型捕获try-except 语句带有多个 excepct 的 try 语句捕获未知错误异常参数 eelse 子句finally子句自定义异常抛出异常—raise应用场景抛出异常练习:自定义异常异常 什么是异常 程序在运行时,…

线性回归(公式推导)

线性回归 ​ 线性回归是线性模型的一种典型方法。产品销量预测、岗位薪资预测,都可以用先线性回归来拟合模型。从某种程度上来说,回归分析不再局限于线性回归这一具体模型和算法,更包含了广泛的由自变量到因变量的机器学习建模思想。 原理 …

新开课day12函数进阶作业

写一个匿名函数,判断指定的年是否是闰年 (先直接用普通函数) def fun1(year):if year%100!0 and year%40 or year%4000:return f{year}年是闰年 print(fun1(2000)) #2000年是闰年写一个函数将一个指定的列表中的元素逆序( 如[1, 2, 3] -> [3, 2, 1])(注意:不要使…

什么是DCMM认证?什么是数据管理能力成熟度评估?

GB/T 36073-2018 《数据管理能力成熟度评估模型》(Data Management Capability Maturity Assessment Model,简称:DCMM)是我国数据管理领域首个国家标准。该标准将组织对象的数据管理划分为八大能力域(数据战略、数据治…

无胁科技-TVD每日漏洞情报-2022-9-28

漏洞名称:Rdiffweb 授权问题漏洞 漏洞级别:严重 漏洞编号:CVE-2022-3269;CNNVD-202209-2360 相关涉及:rdiffweb 2.4.7之前版本 漏洞状态:POC 参考链接:https://tvd.wuthreat.com/#/listDetail?TVD_IDTVD-2022-20340 漏洞名称:多个Acer产品缓冲区溢出 漏洞级别:高危 漏洞编号:…

EXPLAIN使用简介

EXPLAIN使用简介EXPLAIN各字段解释idselect_typetabletypepossible_keyskeykey_lenrefrowsextraEXPLAIN各字段解释 id id相同,执行顺序由上到下。id不相同,如果是子查询,id的序号会递增,id值越大优先级越高,越先被执…

19 南京站+div2思维

D. Meta-set 题意:给定一段长为k的数字组合,每个数组的选取为{0,1,2}。找到三个组合满足每位上的k都相同或者都不相同可称为1队,对于5个组合组成的meta-set,要求其中对数要大于等于2. 思路: 1.可发现每两个组合可确定…

drf之day07:drf中的视图集,权限类使用,频率类使用,认证源码分析,权限源码分析,鸭子类型

目录标题一:drf中视图集补充二:登录功能知识点补充三:权限类的使用1.思路:四:频率类的使用1.思路:全局配置五.认证源码分析:六.权限源码分析七:鸭子类型1.定义:2.推导一&…