day01_单元测试_配置文件

news2024/11/23 12:00:42

一、软件的生命周期

**软件的可行性分析:**分析该软件是否值的研发,会消耗多少成本,能带来多少的利益等分析

**需求分析:**分析该软件具体该具备有那些功能,产品经理与客户一起讨论

**软件设计:**该软件应该使用什么样的架构,用什么样的数据库,每个模块的具体功能

**程序编码:**程序员使用规范的编码格式编写代码来实现软件设计中各个模块的功能

**软件测试:**按照需求规格说明书进行测试,**保证软件的质量,**主要有白盒测试(功能测试,看不见结构)和黑盒测试(基于代码结构测试)

**运行维护:**软件部署后,及时修复系统存在的bug和升级系统

二、软件的设计原则

作用:保证项目的质量

**可重用性:**减少重复的代码,遵循DRY原则

**可拓展性:**新增加的功能模块不会影响其他模块的功能

**可维护性:**要求(1)模块的结构具有稳定性,代码结构健壮.(2)可拓展性:新增的模块不会影响其他模块的功能,(3)可组合性:系统的功能分成小模块

**高内聚性:**每个模块完成相应的功能,责任分离

**低耦合性:**各个模块的依赖不易过深

三、编码规范

作用:具有一个见名知意的效果,能更好的做代码维护.

多个单词使用的驼峰命名法\

**包:**所有的名字全小写,域名.模块名.组件名

**接口名:**I+首字母大写的实体类+Impl

接口实现类:首字母大写类+Impl

类名:首字母大写,驼峰命名法

方法名:首写字母小写,后面使用驼峰命名

变量名:首字母小写,驼峰命名,username

常量名:全大写,多个单词使用_分开:

四、jar包的使用,如何导入

作用:能让别人使用自己写好的代码,不用拷贝源码就能使用

**创造一个jar包:**将写好的项目进行如下操作
在这里插入图片描述

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pVj16N6P-1684826940764)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324193023281.png)]

下方可以自定义打包的路径

在这里插入图片描述

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VKvSxKYC-1684826940766)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324193154523.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qKrHP6HT-1684826940768)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324193210863.png)]

打包成功

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nSojJE1T-1684826940769)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324193345524.png)]

jar包的使用:

作用:不用自己再去写功能,可以通过导入jar包直接使用别人写好的方法

新建一个和src同级的lib文件夹–>将jar包导入或者粘贴进去–>右键lib文件找到Add as Library–>点击ok就能成功导入别人写的jar包

使用方法:

知道jar包中有哪些需要使用的方法,如图JarTest()类中有一个hasLength()方法

使用方法是在src里面的main方法中进行调用这个类中的方法,如图[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-a9LZubw5-1684826940771)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324193844436.png)]

五、单元测试(Junit)

作用:可以保证一个写好的程序是没有问题的,减少后面代码返工,摆脱只能使用main方法运行的束缚

5.1 如何使用junit

1.先写一个测试类(public 没有返回值)如图

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cjhjJ6eu-1684826940772)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324195519647.png)]

2.创建一个和src同级的test文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tSMGDtNx-1684826940773)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324195732666.png)]

3.类型设为热Test Rourses Root

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nYTKyQAo-1684826940775)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324200048330.png)]

4.创建一个测试类并添加"@Test",选择Junit4版本进行下载

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-scMLC7Ju-1684826940776)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324200410481.png)]

5.每个版块都可以单独进行运行

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-h4ar9F40-1684826940777)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324201032280.png)]

六、配置文件( properties /xml)

含义:存了数据给程序用的文件

作用:解决硬编码问题,该内容就可以直接在文件中修改

如何使用propertise(格式为key=value):

注意 :在properties文件中,不能写空格和""

1.创建普通文件夹并将其修改为Sources Root 目录(如果是给单元测试用就改为Test Sources Root)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SNRYZpSv-1684826940780)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324202755487.png)]

2.在目录中创建配置文件并写入数据

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tHpBTpar-1684826940782)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324203050797.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UojS81uX-1684826940783)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324203216201.png)]

在单元测试中创建 实体类和测试类

开发中不能使用绝对路劲去获取配置文件的内容

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FSJ0AzD5-1684826940784)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324211005221.png)]

使用单元测试:

在单元测试中创建 实体类和测试类

开发中不能使用绝对路劲去获取配置文件的内容

使用单元测试:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-d80aGjZB-1684826940785)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230324211055182.png)]

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Github Copilot 的补强工具Github Copilot Labs的常用功能介绍

一、什么是Github Copilot Labs Github Copilot Labs是由GitHub推出的一款基于人工智能技术的代码协作工具,旨在协助开发者更加快速、高效地编写代码。该工具使用了机器学习技术,通过学习大量的开源代码和编写实践,提供了对于代码变量、函数…

物理删除与逻辑删除

目录 一、物理删除与逻辑删除 二、逻辑删除实现 三、API使用方法 四、全局配置参数 一、物理删除与逻辑删除 物理删除:指文件存储所用到的磁存储区域被真正的擦除或清零,这样删除的文件是不可以恢复的,物理删除是计算机处理数据时的一个概…

怎样的年轻化法则,让这个品牌四年净利润复合增速达30%

年轻世代消费者的崛起,从消费层面讲,为市场带来活跃的同时,给品牌带来的是如何转型升级的问题,在众多转型的品牌中,年轻化策略与方式不尽相同。 在2019年至2022年期间,报喜鸟营收复合增速达10%&#xff0c…

iptables防火墙(2)

iptables防火墙(2) 一、SNATSNAT应用环境SNAT原理SNAT转换前条件扩展 二、DNATDNAT应用环境DNAT原理DNAT转换前提条件扩展 三、防火墙规则的备份和还原导出(备份)所有表的规则导入(还原)规则 一、SNAT SNA…

线性回归和预测

目录 1、线性回归 2、R-Squared 1、线性回归 在机器学习和统计建模中,这种关系用于预测未来事件的结果 线性回归使用数据点之间的关系在所有数据点之间画一条直线 这条线可以用来预测未来的值 在机器学习中,预测未来非常重要。比如房价、股票等预测 …

分布式全局唯一id实现-4 springCloud-MyBatis-Plus集成美团分布式全局id(leaf)

前言:美团的leaf集成了db分段生成id和雪花算法生成分布式id,本文对其实现部分细节展开讨论,leaf 的具体实现请参考:https://tech.meituan.com/MT_Leaf.html; 1 使用db分段id: leaf 的分段id本质上是使用了…

5。STM32裸机开发(5)

嵌入式软件开发学习过程记录,本部分结合本人的学习经验撰写,系统描述各类基础例程的程序撰写逻辑。构建裸机开发的思维,为RTOS做铺垫(本部分基于库函数版实现),如有不足之处,敬请批评指正。 &…

二本4年测试经验,3面阿里艰苦经历(定薪25K),上岸那天我哭了...

前言 4月准备跳槽,先后面试了各大小公司,拿了一些小offer,面试的公司大部分都能过,但是做人总是要用梦想吧,没有梦想和咸鱼有什么区别,最终把目标放在了阿里,准备了大概3个月的时间&#xff0c…

mysql45讲笔记

不一定要都学,有些感觉用不到,有选择的学!!! 文章目录 mysql45讲1.mysql基础架构2.mysql日志系统3.事务隔离4.索引类型1.哈希表2.有序数组3.二叉搜索树4.B 树 5.索引重点概念覆盖索引索引下推最左前缀原则 6.全局锁表级…

ERP系统是什么?ERP实施顾问怎么做?

ERP实施顾问怎么做? 首先想要从事相关行业,必须先了解什么是ERP,ERP系统功能模块是怎样的,而后才能进行ERP实施顾问的工作。 一、ERP是什么 ERP系统主要是干什么的?ERP系统,简单理解就是一套记账、做账软…

“全球金融科技大会——中国金融业开源技术应用与发展论坛”在北京举行

3月28日,“全球金融科技大会——中国金融业开源技术应用与发展论坛”在北京新动力金融科技中心举行。 会议现场 人民银行科技司二级巡视员杨富玉,开放原子开源基金会理事长孙文龙,中国金电党委书记、董事长周逢民为大会致辞。北京市西城区区…

(转载)MATLAB智能算法30个案例分析(3)——基于遗传算法的BP神经网络优化算法

1 理论基础 1.1 BP神经网络概述 BP网络是一类多层的前馈神经网络。它的名字源于在网络训练的过程中,调整网络的权值的算法是误差的反向传播的学习算法,即为BP学习算法。BP算法是Rumelhart等人在1986年提出来的。由于它的结构简单,可调整的…

docker+redis哨兵模式(一主二从三哨兵)- docker-compose

一、docker-compose 安装: sudo apt-get update #安装最新的docke-ce sudo apt-get install docker-ce # 下载最新的docker-compose curl -L https://github.com/docker/compose/releases/download/1.25.0-rc4/docker-compose-uname -s-uname -m -o /usr/local…

面试字节,过关斩将直接干到 3 面,结果被吊打了?

人人都有大厂梦,对于软件测试员来说,BAT 为首的一线互联网公司肯定是自己的心仪对象,毕竟能到这些大厂工作,不仅薪资高待遇好,而且能力技术都能够得到提升,最关键的是还能够给自己镀上一层金,让…

网络通信概述 -了解网络编程,什么是ip和端口,url

网络:网络就是一种辅助双方或者多方能够连接到一起的工具。 左:单机游戏(无网络) 右:网络游戏 网络编程:网络编程就是,让在不同的电脑上的软件能够进行数据传递,即进程之间的通信。…

一名8年测试工程师,因为偷偷接私活被····

接私活 对程序员这个圈子来说是一个既公开又隐私的话题,不说全部,应该大多数程序员都有过想要接私活的想法,当然,也有部分得道成仙的不主张接私活。但是很少有人在公开场合讨论私活的问题,似乎都在避嫌。就跟有人下班后…

【WAF绕过】姿势总结(一)

【WAF绕过】姿势总结(一) 方法 Payload 编码 1、进行url编码(少数waf不会进行URL解码,部分waf进行一次url解码>可对payload进行二次url编码) 2、Unicode编码:单引号 %u0027、%u02b9、%u02bc 3、部分十六进制编…

Python可视化神器Seaborn入门系列——kdeplot

Seaborn是基于matplotlib的Python可视化库。 它提供了一个高级界面来绘制有吸引力的统计图形。Seaborn其实是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,不需要经过大量的调整就能使你的图变得精致。但应强调的是,应该…

ChatGPT 火爆全球,我们能抓住的下一个风口在哪?

中国互联网行业正面临着巨大的压力和挑战,但也孕育着新的发展机遇。当下正值ChatGPT火爆,整个互联网行业充满了机遇和挑战,身处其中的我们能抓住什么呢? 思你所思,帮大家整理出了五大风口!希望对大家有所帮…

html SpeechSynthesis文字转语音

web 页面使用speechSynthesis实现文字转语音 网页语音 API 的SpeechSynthesis 接口是语音服务的控制接口;它可以用于获取设备上关于可用的合成声音的信息,开始、暂停语音,或除此之外的其他命令。 属性 SpeechSynthesis 也从它的父接口继承属…