黑马Javaweb.1.1Junit单元测试
黑马第一天学习
- 今日内容
- Junit单元测试:
- 测试分类:
- Junit使用:白盒测试
今日内容
1.1Junit单元测试
1.2.反射
1.3.注解
Junit单元测试:
测试分类:
1.黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值
(非常简单,不用关注具体逻辑)
2.白盒测试:需要写代码的。关注程序具体的执行流程。(junit是白盒的一种)
3.两种测试的主要区别
都要关注输出是否符合期望,主要区别就是白盒测试你需要去关注程序的流程,白盒测试需要写代码,黑盒测试只需要点点点,现在社会上的测试人员大多都是黑盒测试,希望大家能成为白盒测试工程师。
在用这个计算器类之前,要测试一下。
缺点,很不方便:1.测试类要和被测试类放一起 2.每次测试一个方法,都要把其他的方法注释掉,以免产生干扰
Junit使用:白盒测试
*步骤:1,定义一个测试类(测试用例)*建议:*测试类名:被测试的类名 +Test 如CalculatorTest*包名:xxx.xxx.xx.test 如cn.itcast.test 2,定义测试方法:可以独立运行*建议:*方法名:test测试的方法名 testAdd()*建议返回值:void*建议参数列表:空参完全的独立运行,不用返回值,不用传参3.给方法加上@Test4.导入Junit依赖* 判定结果:红色:失败绿色:成功* 一般我们会使用断言操作来处理结果
Assert.assertequals(期望结果,运算结果result);
最基本的测试类
程序测试成功
使用Junit一般不看打印结果,而是看红色(错误)还是绿色(成功)
- 一般不用输出,而是采用断言的方式
Assert有很多函数,
Assert.ossertEquals(3,result);//断言result为3
白窗模糊界面是黑马网课界面
黑窗是我本人的界面。然后改了一下皮肤,前面的看不清
再测试一下减法。建议先看黑马网课,看一会,敲一会,因为她有很多快捷的敲代码方法
第一节课结束,展示文件目录和代码
Calculator测试类
package cn.itcast.test;import cn.itcast.junit.Calculator;
import org.junit.Assert;
import org.junit.Test;public class CalculatorTest {//老版本,用 main 函数来测试方法
// public static void main(String[] args){
//
// //创建对象
// Calculator calculator = new Calculator();
//
// //调用
// /*
// int result = calculator.add(1, 2);
// System.out.println(result);//3,正确
// */
// /*
// int result = calculator.sub(1, 1);
// System.out.println(result);//0,正确
// */
// }/*** 测试 add 方法*/@Test//Alt + Enter 添加 Junit 依赖public void testAdd(){//System.out.println("我被执行了"); //我被执行了//1.创建计算器对象Calculator calculator = new Calculator();//调用add方法int result = calculator.add(1, 2);//System.out.println(result); // 3//3.断言,我断言整个结果为3Assert.assertEquals(3, result);}@Testpublic void testSub(){//1.创建计算器对象Calculator calculator = new Calculator();int result = calculator.sub(1, 2);Assert.assertEquals(-1, result);}
}
package cn.itcast.junit;//psvm这里不用写主函数
public class Calculator {/*** 加法* @param a* @param b* @return*///当你把方法写好后,移到方法的上面,然后敲入/**,一回车就出来了public int add ( int a , int b ){//return a + b ;//故意写错return a + b ;}/*** 减法* @param a* @param b* @return*/public int sub ( int a , int b ){return a - b ;}
}
- 补充:
@Before:修饰的方法会在测试方法之前被自动执行
@After:修饰的方法会在测试方法执行之后自动执行。
package cn.itcast.test;import cn.itcast.junit.Calculator;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;public class CalculatorTest {/*** 初始化方法:* 用于资源申请,所有测试方法在执行之前都会先执行该方法*/@Beforepublic void init(){System.out.println("init...");}/*** 释放资源方法:* 在所有测试方法都执行完以后,都会自动执行该方法*/@Afterpublic void close(){System.out.println("close...");}/*** 测试 add 方法*/@Test//Alt + Enter 添加 Junit 依赖public void testAdd(){//System.out.println("我被执行了"); //我被执行了System.out.println("testAdd...");//1.创建计算器对象Calculator calculator = new Calculator();//调用add方法int result = calculator.add(1, 2);//System.out.println(result); // 3//3.断言,我断言整个结果为3Assert.assertEquals(3, result);}@Testpublic void testSub(){//1.创建计算器对象Calculator calculator = new Calculator();int result = calculator.sub(1, 2);System.out.println("testSub...");Assert.assertEquals(-1, result);}}
黑马Javaweb.1.1Junit单元测试相关推荐
- 25-day24黑马javaweb笔记-redis
目录 25-day24黑马javaweb笔记-redis 概念 什么是NOSQL 主流的NOSQL产品 什么是Redis 下载安装 命令操作 1. redis的数据结构: 2. 字符串类型 strin ...
- 09-day6黑马javaweb笔记-html基础
09-day6黑马javaweb笔记-html基础 web概念概述 Javaweb 使用Java语言开发基于互联网的项目 软件架构: C/S: Client/Server 客户端/服务器端 * 在用户 ...
- 黑马javaweb基础教程 综合案例代码
跟着黑马的javaweb教程把综合案例敲了一遍,也把修改和删除功能实现了,但是有一个小bug,懒得改了,大佬可以去改好. 综合案例展示如下: 代码实现了批量删除,增加品牌,修改,删除,还有条件查询 条 ...
- 黑马JavaWeb学习笔记(一)
JavaWeb 事务 事务的基本操作 START TRANSACTION ----开始事物 COMMIT --手动提交 ROLLBACK --返回 保存临时数据,方式报错导致数据错误 如果不开启事物的 ...
- 黑马JavaWeb全功能综合案例(element-ui+mybatis+Vue+ajax)
目录 1,功能介绍 2,环境准备 2.1.项目结构 2.2 创建表 3.功能实现 3.1.查询所有功能 后端实现 前端实现 3.2.添加功能 后端实现 前端实现 3.3.servlet优化 代码优化 ...
- 20210213 黑马javaweb JDBC
# 今日内容 1. JDBC基本概念 2. 快速入门 3. 对JDBC中各个接口和类详解 ## JDBC: 1. 概念:Java DataBase Connectivity ...
- 《黑马》——C++基础入门
<黑马>--C++基础入门 Netfishless 2020-09-05 18:32:22 88654 收藏 3458 分类专栏: C++ 文章标签: c++ 原文链接:https://w ...
- javaWeb基础---Jsp
目录 1.jsp简述 2.jsp的生命周期 2.1 JSP编译 2.2 JSP初始化 2.3 JSP执行 2.4 JSP清理 3.jsp的基本语法 3.1 2种注释类型 3.2 3个脚本元素 3 ...
- 《JavaWeb篇》02.JDBC看这一篇就够了
JDBC 陈老老老板 说明:在整体的复习一遍知识,边复习边总结,基础真的重要,需要注意的地方都标红了,还有资源的分享. 一起加油. 资源分享:看的黑马的视频,老师讲的特别好: 视频链接:黑马JavaW ...
最新文章
- 250鲁大师跑分_看了鲁大师跑分,会发现MX250独显笔记本已落伍了
- Oracle数据导入导出imp/exp sp2-0734:未知的命令开头'imp 忽略了剩余行默认分类 解决办法...
- Windows中断编程
- LeetCode Non-overlapping Intervals(dp,greedy)
- php 注册回调函数,PHP回调函数
- Python基础——PyCharm版本——第七章、面向对象编程
- 正则表达式零宽断言详解
- [剑指offer]面试题第[53-2]题[JAVA][0-n-1中缺失的数字][二分法][暴力法]
- python中怎么创建配置文件_如何在Django中创建配置文件注册表单?
- python连载第12篇 for循环 源码+ 答案
- 素数/质数的判断(C++)
- MySQL内核月报 2014.10-MySQL· 捉虫动态·binlog重放失败
- mysql图形界面navicat的连接
- Linux设备驱动——驱动模型之基本结构
- 在精简版的xp添加删除程序里面没有IIS的解决方法
- Java对接谷歌身份验证器
- ORAN C平面 Section Type 3
- Flask源码阅读(六)——Flash消息
- 简约好用的日期时间选择js插件
- java经典递归 背包问题
热门文章
- 知识变现海哥|知识变现的核心技能-知识转化能力
- 职业规划不可不读的19个案例故事
- error C2556: 'void __thiscall......overloaded function differs only by return type from 'int __thisc
- Gated-SCNN: Gated Shape CNNs for Semantic Segmentation
- Bootstrap-Plugin:附加导航(Affix)插件
- python模拟登录12306_Python模拟登录12306的方法
- 基于词向量的相似度短语挖掘
- 爬虫学习笔记1(超级详细)
- 毕达哥斯拉三元组poj1305
- 3. 通用计算机 (计算机发明的逻辑与细节)