我是靠谱客的博主 潇洒大门,这篇文章主要介绍java软件测试基础,现在分享给大家,希望可以做个参考。

使用记事本来编辑java文件

1. 配置java的路径

1.1选中此电脑图标/右击后,选中下拉菜单的属性/
在这里插入图片描述
1.2选中高级系统设置链接

在这里插入图片描述
1.3选中系统属性窗口中的环境变量按钮
在这里插入图片描述
1.4选中系统变量中的“CLASSPAT”路径,添加英文状态下的符号为,;

注意:若系统变量中的没有“CLASSPAT”就点击新建,添加“该变量的名称”和”值“即可
在这里插入图片描述

2.系统命令生成.class文件和访问java中的文件

cmd> javac java文件名.后缀名 //编辑java文件,生成java的.class文件

cmd> java java文件名 //显示java里面的输出内容

在这里插入图片描述

3. 解决乱码问题

文本文件名.txt"改为"java文件名.java"

记事本中的含java代码的内容的文件:首先,"另存为"另一个文件名称;接着,记事本文件的后缀名为“文件名.java”;最后修改文字编码为ANSI,点击确定即可
在这里插入图片描述

4. java基础编码

4.1 计算华氏温度

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package test_softwareTEst; class Test2{ public static void main(String[] args){ //dh为摄氏温度,ds为华氏温度 double dh = 0; double ds = 0; System.out.println("请输入华氏度的值!"); java.util.Scanner input = new java.util.Scanner(System.in); dh = input.nextDouble(); System.out.println("转成摄氏度的值是:"+dh); ds =(dh-32)*(5.0/9);//此处的5为double型,录入的是5.0!! System.out.println("转成摄氏度的值是:"+ds); } }

4.2 多重判断语句

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package test_softwareTEst; class Test3 { public static void main(String[] args) { int cls = 0; String sex = " ";//语法:文本赋值格式,,不能用null!! java.util.Scanner input = new java.util.Scanner(System.in); System.out.println("请输入班级为任意数字1,2,3:"); cls = input.nextInt(); System.out.println("请输入性别为女生或男生:"); sex = input.next(); if (cls == 1 && sex.equals("男生")) {//文本判断语法!! System.out.println("男生 矿泉水"); } else if (cls == 2 && sex.equals("男生")) { System.out.println("男生 冰红茶"); } else if (cls == 1 && sex.equals("女生")) { System.out.println("女生 农夫山泉"); } else if (cls == 3 && sex.equals("男生")) { System.out.println("男生 脉动"); } else if (cls == 3 && sex.equals("女生")) { System.out.println("女生 阿沙姆奶茶"); } else if (cls == 2 && sex.equals("女生")) { System.out.println("女生 昆仑山泉"); } else { System.out.println("无此班级!"); } } }

4.3 三角形问题

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package test_softwareTEst; class Test4 { public static void main(String[] args) { java.util.Scanner input = new java.util.Scanner(System.in); System.out.println("请输入a"); int a=input.nextInt(); //i为行数 for(int i =1;i<=a;i++){ for(int j =1;j<=i;j++){ System.out.print("*"); } System.out.println(); } } }

4.4 九九乘法表

法一:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package test_softwareTEst; class Test4 { public static void main(String[] args) { java.util.Scanner input = new java.util.Scanner(System.in); System.out.println("请输入a"); int a=input.nextInt(); //i为行数 for(int i =1;i<=a;i++){ for(int j =1;j<=i;j++){ System.out.print("*"); } System.out.println(); } } }

法二:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
package test_softwareTEst; class Test5 { public static void main(String[] args) { int sum =0; //i为行数 for(int i =1;i<=9;i++){ for(int j =1;j<=i;j++){//j=2为打印第2行的数 System.out.print(i+"X"+j+"="+i*j+"t"); } System.out.println(); } } }

4.5 函数的调用

创建一个表格

法一:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
package test_softwareTEst; public class Test8 { static int tiji(int a,int b,int c) { int area = a*b*c; return area; } public static void main(String[] args) { System.err.print("长方形的面积是"+tiji(3,2,5)); } }

法二:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
public class Test8 { static int tiji(int a,int b,int c) { return a*b*c; } public static void main(String[] args) { System.err.print("长方形的面积是"+tiji(3,2,5)); } } if (cls == 1 && sex.equals("男生")) {//文本判断语法!! System.out.println("男生 矿泉水"); } else if (cls == 2 && sex.equals("男生")) { System.out.println("男生 冰红茶"); } else if (cls == 1 && sex.equals("女生")) { System.out.println("女生 农夫山泉"); } else if (cls == 3 && sex.equals("男生")) { System.out.println("男生 脉动"); } else if (cls == 3 && sex.equals("女生")) { System.out.println("女生 阿沙姆奶茶"); } else if (cls == 2 && sex.equals("女生")) { System.out.println("女生 昆仑山泉"); } else { System.out.println("无此班级!"); }

4.7 面向对象

测试中类中,实例化名.方法体的名称;实例化名.名词的属性名称(此处已经赋值了)

5. 白盒测试流程图

if条件覆盖1

5.1 java文件编码

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
package test_softwareTEst; class Test11 { public static void main(String[] args) { java.util.Scanner input = new java.util.Scanner(System.in);//第1行 System.out.println("请输入一个Score:");//第2行 int Score = input.nextInt();//第3行 if (Score >=80) { //第4行 System.out.println("优秀");//第5行 } else if (Score>=60) {//第6行 System.out.println("及格");//第7行 } else { System.out.println("不及格");//第8行 } } }

5.2程序流程图

在这里插入图片描述

5.3.控制流程图

在这里插入图片描述
注意;控制流程图中有三个分支,就有是那种背景色,不包括圆内的颜色(三色:小正方形,大正方形和最外层的背景色)

if条件覆盖测试用例

在这里插入图片描述

循环覆盖测试用例

在这里插入图片描述

for循环覆盖1

1.java文件编码

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
package test_softwareTEst; class Test10 { public static void main(String[] args) { java.util.Scanner input = new java.util.Scanner(System.in); System.out.println("请输入a"); int a=input.nextInt(); //i为行数 for(int m =1;m<=100;m++){ System.out.print("服务"+m);//m为服务的次数 } } }

2.程序流程图

在这里插入图片描述

4.for循环测试用例

在这里插入图片描述

for循环覆盖2

1.java代码

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package test_softwareTEst; class 多符号的输出 { public static void main(String[] args) { java.util.Scanner input = new java.util.Scanner(System.in); System.out.println("请输入m"); int m=input.nextInt(); //i为行数 for(int i =1;i<=m;i++){ for(int j =1;j<=10;j++){//不参与流程图中 System.out.print("*");//不参与流程图中 }//不参与流程图中 System.out.println();//不参与流程图中 } } }

2.程序和控制流程图

在这里插入图片描述
注意:此处的循环语句的流程控制图,只画一个循环的线就可以了。内部的另一个for循环跟上一个for循环无关,故部分语句不参与!!

for循环覆盖3

范围前的数-范围后的数

取值:前数,前数+1;取两个数的中间值;后数,后数+1

1.java代码

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package test_softwareTEst; class Test12 { static void print() { java.util.Scanner input = new java.util.Scanner(System.in); System.out.println("请输入m"); int m=input.nextInt();//第0个 System.out.println("请输入n"); int n=input.nextInt();//第1个 //i为行数 for(int i =1;i<=m;i++){//第2个 for(int j =1;j<=n;j++){//第3个 System.out.print("*");//第4个 }// System.out.println();//第6个 } } public static void main(String[] args) { Test12 t12 = new Test12(); t12.print(); } }

运行结果:

在这里插入图片描述

2.程序和控制流程图

在这里插入图片描述

6. 黑盒测试流程图

黑盒测试“用例”

备注:去掉满足条件的头部和尾部的数字
有效等价类:满足条件的取值范围
无效等价类:取不满足条件的范围(超出的范围)

1. 等价类!

测试用例类似于区间无法,无效等价类为不满足的条件,有效等价类为满足的条件(变量所取值的范围)

等价类题目

有效等价类要求:
微信号: 2~10位,只能以后下划线,美元$ 字母开头
密码: 6~16位 ,必须只能字母开头

在这里插入图片描述

在这里插入图片描述

备注:有效等价类的条件必须一一拆开,为了便于后面的测试!!

等价类的测试用例:

测试用用例表(测每个变量的前后数超出的边界范围,每个变量最少测1次)

在这里插入图片描述

2.边界值表

题目

已知成绩score:0~750,写出边界值表

边界值表

在这里插入图片描述

测试用例!

在这里插入图片描述
分析:边界值表取头数的前面的数,头数本身,头数+1;取总数值/2; 尾数的前面的数,尾数本身,尾数+1

6x+1=6+7(以上的七个分析值决定)+1=14

3. 决策表

文本定义

题目1

要求:3 如果总分高于450,各科均分高于75或优秀毕业生,直接录取。否则待定

规划

在这里插入图片描述

1.真值表判断

在这里插入图片描述

(中间的后一步需要合并!!)

在这里插入图片描述

2.最终合并(-符号为取任何值都可以满足条件)

在这里插入图片描述
备注:合并需要根据录取和待定进行判读,若它们列与列的录取都为打勾状态就可以进行合并了。合并的条件:打勾的类型一样;前两项数字对应一样;后三项对应数字有一个相同的也是可以合并的。这里使用到的值为0和1

2. 题目2!

在这里插入图片描述

规划

在这里插入图片描述
备注1:备注:在条件和情况中标号0和1,需要打勾的值。在下表中先找到满足的2个条件的,进行后面的情况判断。最后在判断第3个条件的值

1.真值表

在这里插入图片描述
备注2:在条件和情况中标号0和1,需要打勾的值。在下表中先找到满足的2个条件的,进行后面的情况判断。最后在判断第3个条件的值

2.最终合并

在这里插入图片描述

3.测试用例!

在这里插入图片描述

符号替文字!

3.题目:

成绩>60分,通过;成绩50~60分,平时成绩大于80,通过,否则不给通过;成绩<60分,不通过

1.规划

在这里插入图片描述

2.分析

在这里插入图片描述

3.合并同类型

在这里插入图片描述

4.题目

题目:成绩>60分,通过;成绩50~60分,表现好且通过;成绩<60分,不通过

1.规划

在这里插入图片描述

2.分析

在这里插入图片描述

3.合并同类型

在这里插入图片描述

5.题目

1.规划

在这里插入图片描述

2.分析

在这里插入图片描述

3.合并同类型

在这里插入图片描述

7.DateUntil工具类的使用

7.1DateUtil.java

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package Test2; public class DateUtil { public String createDate(int year,int month,int day) { String str=""; // if(year <1950 || year >2100) { return "年份只能在1950~2100之间"; } // if(month <1 || month >12) { return "月份只能在1~12之间"; } // if(day <1 || day >31) { return "天数只能在1~31之间"; } // if( (month ==4 || month ==6 || month ==9 ||month ==11) && day >30) { return "小月不能超过30天"; } if(month ==2) { if(year%4==0 && year%100!=0) { if(day>29) { return "闰年2月不能超过29天"; }else { return "平闰年2月不能超过28天"; } } } return year +"年" +month +"月" +day +"日"; } }

7.2 Test1.java //单条测试

复制代码
1
2
3
4
5
6
7
8
9
10
package Test2; public class Test1{ public static void main(String [] args){ DateUtil du = new DateUtil(); // assertEquals("2000年5月12日",du.createDate(2000, 5, 12));// 验证 System.out.println(du.createDate(2000, 5, 12)); } }

7.3 测试表(共31个测试用例)

3.1等价测试表!

3.2边界测试表!

备注:正常——期望一样,去掉重复的行

3.3其他测试表

在这里插入图片描述

7.4DateUtil_TestCase.java //多条测试

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
package Test2; import Test2.DateUtil; import junit.framework.TestCase; public class DateUtil_TestCase extends TestCase { DateUtil du = new DateUtil(); /*********************1.等价类列表测试(7条)start*********************************/ // 备注:n个方法的验证方式相同,使用junit工具类,进行测试后,运行结果出现绿色,则表明这n个方法的测试中所验证的值是 public void test001() { //字符型的文字跟等价类表中的期望结果的值一样!! assertEquals("2000年5月12日",du.createDate(2000, 5, 12));// 验证 } public void test002() { assertEquals("年份只能在1950~2100之间",du.createDate(1949, 2, 2)); } public void test003() { assertEquals("年份只能在1950~2100之间",du.createDate(2101, 11, 30)); } public void test004() { assertEquals("月份只能在1~12之间",du.createDate(1990,-5,31)); } public void test005() { assertEquals("月份只能在1~12之间",du.createDate(1999,0,5)); } public void test006() { assertEquals("天数只能在1~31之间",du.createDate(1998,6,-5)); } public void test007() { assertEquals("天数只能在1~31之间",du.createDate(1992,8,0)); } /*********************1.等价类列表测试(7条)end*********************************/ /*********************2.边界值表测试(19条)start*********************************/ public void test008() { //字符型的文字跟等价类表中的期望结果的值一样!! assertEquals("年份只能在1950~2100之间",du.createDate(1949,6,16));// 验证 } public void test009() { assertEquals("1950年6月16日",du.createDate(1950,6,16)); } public void test010() { assertEquals("1951年6月16日",du.createDate(1951,6,16)); } public void test011() { assertEquals("1999年6月16日",du.createDate(1999,6,16)); } public void test012() { assertEquals("2000年6月16日",du.createDate(2000,6,16)); } public void test013() { assertEquals("2100年6月16日",du.createDate(2100,6,16)); } public void test014() { assertEquals("年份只能在1950~2100之间",du.createDate(2101,6,16)); } public void test015() { //字符型的文字跟等价类表中的期望结果的值一样!! assertEquals("月份只能在1~12之间",du.createDate(1972,0,16));// 验证 } public void test016() { assertEquals("1972年1月16日",du.createDate(1972,1,16)); } public void test017() { assertEquals("平闰年2月不能超过28天",du.createDate(1972,2,16)); } public void test018() { assertEquals("1972年11月16日",du.createDate(1972,11,16)); } public void test019() { assertEquals("1972年12月16日",du.createDate(1972,12,16)); } public void test020() { assertEquals("月份只能在1~12之间",du.createDate(1972,13,0)); } public void test021() { assertEquals("1972年6月1日",du.createDate(1972,6,1)); } public void test022() { assertEquals("1950年6月2日",du.createDate(1950,6,2)); } public void test023() { assertEquals("1972年6月30日",du.createDate(1972,6,30)); } public void test024() { assertEquals("1972年6月30日",du.createDate(1972,6,30)); } public void test025() { assertEquals("小月不能超过30天",du.createDate(1972,6,31)); } public void test026() { assertEquals("天数只能在1~31之间",du.createDate(1972,6,32)); } /*********************2.等价类列表测试(19条)end*********************************/ /*********************3.边界值表测试(5条)start*********************************/ public void test027() { assertEquals("年份只能在1950~2100之间",du.createDate(1949,4,31)); } public void test028() { assertEquals("年份只能在1950~2100之间",du.createDate(1949,4,32)); } public void test029() { assertEquals("年份只能在1950~2100之间",du.createDate(1949,9,33)); } public void test030() { assertEquals("2000年2月29日",du.createDate(2000,2,29)); } public void test031() { assertEquals("2000年2月28日",du.createDate(2000,2,28)); } /*********************3.等价类列表测试(5条)end*********************************/ public static void main(String[] args) { junit.textui.TestRunner.run(DateUtil_TestCase.class);// 此处需要安装。导入JUnit包 } }

8.数据库

在cmd命令中使用数据库

mysql -u root -p //只需要密码登录数据库

show databases; //显示所有的数据库

create database 数据库名; //创建数据库

use 数据库名; //使用数据库

select database(); //查询数据库

注意:1个汉字占2个字符;建表以分号结束

desc 表名 ; // 查看表的结构

create table 表名(

​ //学号为字符串类型

​ //末尾的最后一个变量的定义,不需要写逗号间隔

​ sno varchar(4) , //学号

​ sname varchar(8),

​ sex varchar(4),

​ age int(4)

);

select * from 表名; //查表

insert into 表名(列名1,列名1……) values(列名1的数据类型,列名2的数据类型……);

先停掉数据库,在删掉数据库

update 表名 set 列名1=‘列名值1’,列名n=‘列名值n’ where 主键列名=‘主键的值’ //修改行中的n列

delete from 表名 where 学号=‘值’;//删除一条数据记录

在这里插入图片描述

在这里插入图片描述

9.tomcat设置

9.1tomcat的安裝路徑

最好采用系统帮默认安装的方式,就是安装tomcat路径不需要修改!!
在这里插入图片描述

9.2tomcat的配置路徑

电脑tomcat的安裝路徑属性/高级设置/系统变量/classpath/tomcat安装的bin目录
在这里插入图片描述

9.3测试配置

在cmd中查看是否已经配置好路径了 或在电脑的命令提示符cmd中进行测试,8为tomcat的版本号!!
在这里插入图片描述

9.4检测tomcat8是否安装成功

法一:在cmd中查看是否已经配置好路径了 或在电脑的命令提示符cmd中进行测试,8为tomcat的版本号!!
若使用命令行输入tomcat8后,系统会显示以下的配置信息,则已经在classpath那里配置成功了
在这里插入图片描述

法二:在浏览器中测试:http://localhost:8080/

1.运行内部的tomcat文件(双击tomcat.exe文件)

在这里插入图片描述

2.注意:如果在浏览器中无法加载tomcat主界面,那么说明tomcat的可执行文件exe还没有运行!!

例子:http://localhost:8080/lanykey/login.jsp
注意: 每次编译完在tomcat8的目录下的webapps里面自己所创建的文件后,在点击运行,tomcat8中的bin目录下的的exe文件,否则修改后的页面不正常显示
协议://ip地址:端口号/用户自己在tomcat8的webapps文件夹下所创建的目录/同左目录下的文件(文件内是由内容的)

1.物理主机的IP地址

http://192.168.51.173:8080/lanykey/222.txt

2.以下两个ip地址是通用的

http://127.0.0.1:8080/lanykey/222.txt

http://localhost:8080/lanykey/222.txt

注意:222.txt文件必须是在tomcat安装路径下的webapps路径内的文件,并且文件内部必须由内容!!!
在这里插入图片描述

10. 安装JUnit工具

下载和安装JUnit工具基本步骤

1.从官网下载

2.解压JUnit包到本地的磁盘上

3.在java企业版中导入此包

3.1在java企业版中,选中项目后,在选项卡中点击属性

在这里插入图片描述

3.2选中3个地方: java Buid Path/libraries/AddExternal JARs…/打开即可导入“mysql-connector-java-5.1.49.jar”

在这里插入图片描述
在这里插入图片描述

3.3选中项目中的3个地方,勾选使用mysql…jar包在这里插入图片描述

在这里插入图片描述

3.4选择自己下载好的JUnit工具

“Test_finally”/“D:mysql安装包mysql-connector-java-5.1.49mysql-connector-java-5.1.49.jar”/“com.mysql.jdbc”/“Driver.class”
在这里插入图片描述

3.5查看JUnit的驱动名字

“Test_finally”/“D:mysql安装包mysql-connector-java-5.1.49mysql-connector-java-5.1.49.jar”/“com.mysql.jdbc”/双击"Driver.class"/找到驱动器的名字为“com.mysql.jdbc.Driver”
在这里插入图片描述

11.out.println和System.out.println的区别

out.println:在浏览器中输出(任意访问的浏览器中,内部不显示java中信息)

在这里插入图片描述
System.out.println:在dos命令行中输出(tomcat8的命令行中显示)
在这里插入图片描述

12.配置tomcat8访问网页的路

12.1 在tomcat8下的路径webapps目录下新建4个文件夹(lanykeyWEB-INF)

C:Program FilesApache Software FoundationTomcat 8.0webappslanykeyWEB-INF

在tomcat8下的路径webapps目录下新建2个文件夹分别为classes和lib文件夹
在这里插入图片描述
12.2 Test1文件夹内的class文件,从java软件中复制出整个项目的文件到桌面上。在内部找到bin文件夹,复制bin内部的Test1文件夹含几个.classs文件到以下的目录,如下图
路径为:C:Program FilesApache Software FoundationTomcat 8.0webappslanykeyWEB-INFclassesTest1
在这里插入图片描述
12.3 复制本地mysql驱动包

C:Program FilesApache Software FoundationTomcat 8.0webappslanykeyWEB-INFlib
在这里插入图片描述

1.登录类

注意:jsp,txt等等其他的文件都放在tomcat内的webapps文件夹内!!
在这里插入图片描述

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <html> <head>登录界面</head> <meta charset="UTF-8" /> <body> <form action="welcome.jsp"> 用户名:<input type="text" name="username"></input></br> 密码:<input type="text" name="password"></input></br> <input type="button" value="登录" /> <input type="reset" value="重置" /> <input type="submit" /> <% String err= request.getParameter("error"); if(err!=null){ out.print("<span style='color:red;' >用户名或密码错误</span>"); } %> </form> </body> </html>

2.欢迎界面类

在这里插入图片描述

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="Test1.UserInfoDao"%> <html> <head></head> <meta charset="UTF-8" /> <body> <% String str1 = request.getParameter("username"); String str2 = request.getParameter("password"); UserInfoDao dao= new UserInfoDao(); if(!dao.validateUserInfo(str1 ,str2 )){ response.sendRedirect("login.jsp?error=no"); } %> <h1>欢迎!热烈欢迎!</h1> </body> </html>

3.cmd命令提示符

进入mysql命令中
mysql -u root -p
在这里插入图片描述

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
//新建表 create table UserInfo( account varchar(16), password varchar(16), username varchar(16) ); show databases;//显示已有的全部的数据库名 create database lanykey; use lanykey;//只有创建好了数据库,才可以使用数据库名,才看可以有其他的语句可以插入,修改等等!! select * from UserInfo;// insert into UserInfo values('lanykey','123456','adff');// insert into UserInfo values('koki','1111','a');//

在这里插入图片描述
在这里插入图片描述

4.访问网页

http://localhost:8080/
在这里插入图片描述

http://localhost:8080/lanykey/login.jsp
在这里插入图片描述
http://localhost:8080/lanykey/login.jsp

输入正确的信息后,先点击登录,后在点击提交
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

注意:localhost为本地账户,127.0.0.1为每个用户都可以访问,192.168.16.214为自己主机的ip地址,只能是这个地址可以访问

查看自己电脑的ip地址,在电脑的cmd命令窗口中输入ipconfig/all,即可查看ipv4的地址

在这里插入图片描述
在这里插入图片描述

5.tomcat目录下的.class类文件

在这里插入图片描述

5.1 Student.java

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package Test1; public class Student { public String sno; public String sname; public String sex; public int age; // @Override // public String toString() { // return "Student [sno=" + sno + ", sname=" + sname + ", sex=" + sex + ", age=" + age + "]"; // } }

5.2 StudentDao_test1 .java

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package Test1; import java.util.List; public class StudentDao_test1 { /** * @param args */ public static void main(String[] args) { StudentDao sd = new StudentDao(); Student s = new Student(); s.sno="s012"; s.sname="ggg"; s.sex="女"; s.age=15; StudentDao.addStudent(s);//把s的值加入到addStudent方法体中 sd.deleteStudent("s012"); s.sno="s008"; s.sname="QWQ"; s.sex="女"; s.age=111;;//把s的值加入到addStudent方法体中 StudentDao.addStudent(s);//把s的值加入到addStudent方法体中 List<Student> list = sd.getAll(); for(Student c:list){//foreach System.out.print(c.sno+"t"); System.out.print(c.sname+"t"); System.out.print(c.sex+"t"); System.out.println(c.age+"t"); } } }

5.3 StudentDao.java

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
package Test1; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import java.util.List; import javax.naming.ldap.Rdn; public class StudentDao { static void addStudent(Student student){ //1.获取连接 try { //1.加载驱动类 Class.forName("com.mysql.jdbc.Driver"); //2.设置连接信息 String username="root"; //数据库用户名 String password="123456";//数据库密码 String url ="jdbc:mysql://127.0.0.1:3306/lanykey"; //3.设备连接 Connection conn = DriverManager.getConnection(url, username, password); System.out.println(conn); //3.1设置指令 String sql = "insert into student " + "values('"+student.sno+"'," + " ' "+student.sname+"'," + " '"+student.sex+"'," +student.age+")"; //3.2通过连接创建语句执行者 Statement st = conn.createStatement(); //3.3通过语句执行者,操作数据库 st.execute(sql); st.close(); conn.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } void deleteStudent(String ac){ //1.获取连接 try { //1.加载驱动类 Class.forName("com.mysql.jdbc.Driver"); //2.设置连接信息 String username="root"; //数据库用户名 String password="123456";//数据库密码 String url ="jdbc:mysql://127.0.0.1:3306/lanykey"; //3.设备连接 Connection conn = DriverManager.getConnection(url, username, password); System.out.println(conn); //3.1设置指令 String sql = "delete from student where sno='"+ac+"' "; // insert into student values('s030','ax','w',0); // insert into student values('s010','bx','m',0); // insert into student values('s020','cx','w',0); //3.2通过连接预处理语句执行者 Statement st = conn.prepareStatement(sql);//!! //3.3操作数据库 st.execute(sql); st.close(); conn.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } // static void updateStudent(Student student){ //1.获取连接 try { //1.加载驱动类 Class.forName("com.mysql.jdbc.Driver"); //2.设置连接信息 String username="root"; //数据库用户名 String password="123456";//数据库密码 String url ="jdbc:mysql://127.0.0.1:3306/lanykey"; //3.设备连接 Connection conn = DriverManager.getConnection(url, username, password); System.out.println(conn); //3.1设置指令 String sql ="update student set sname='"+student.sname +"',sex='"+student.sex +"',age="+student.age +" where sno='"+student.sno+"'"; System.out.println(sql);//用来检查语句是否有错!! //3.2通过连接创建语句执行者 Statement st = conn.prepareStatement(sql); // if(st.execute(sql)){ // System.out.println("插入成功!"); // }else{ // System.out.println("插入失敗!"); // } //3.3通过语句执行者,操作数据库 st.execute(sql); st.close(); conn.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } public List<Student> getAll(){ List<Student> list = new ArrayList<Student>();//ArrayList是List的子类!! //1.获取连接 try { //1.加载驱动类 Class.forName("com.mysql.jdbc.Driver"); //2.设置连接信息 String username="root"; //数据库用户名 String password="123456";//数据库密码 String url ="jdbc:mysql://127.0.0.1:3306/lanykey"; //3.设备连接 Connection conn = DriverManager.getConnection(url, username, password); System.out.println(conn); //3.1设置指令 String sql = "select * from student"; Statement st = conn.createStatement(); //3.3操作数据库 ResultSet rs = st.executeQuery(sql);//sql包 while(rs.next()){ Student stu = new Student(); stu.sno = rs.getString("sno"); stu.sname = rs.getString("sname"); stu.sex = rs.getString("sex"); stu.age = rs.getInt("age"); list.add(stu);//!! } st.execute(sql); st.close(); conn.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } return list; } }

5.4 Test1.java

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
package Test1; //jdb的基本框架 import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class Test1 { public static void main(String[] args) { //获取连接 //内存中的工具class try { //1.加载驱动类 Class.forName("com.mysql.jdbc.Driver"); //2.设置连接信息 String username="root"; //数据库用户名 String password="123456";//数据库密码 //String url ="jdbc:mysql://127.0.0.1:3306/lanykey"; String url = "jdbc:mysql://127.0.0.1:3306/lanykey?useUnicode=true&characterEncoding=GBK"; //String url = "jdbc:mysql://127.0.0.1:3306/lanykey?useUnicode=true&characterEncoding=gb2312","root","123456"; //3.设备连接 Connection conn = DriverManager.getConnection(url, username, password); System.out.println(conn); //3.1设置指令 //String sql = "insert into student values('s001','QAQ','女',15)"; //String sql = "update student set sname='QBQ',sex='男',age = 15 where sno='s001' "; //String sql = "delete from student where sno='s001' "; String sql = "select * from student"; //3.2通过连接创建语句执行者 Statement st = conn.createStatement(); //3.3通过语句执行者,操作数据库 //st.execute(sql); //st.execute(sql); ResultSet rs = st.executeQuery(sql); while(rs.next()){ String sno = rs.getString("sno"); String sname = rs.getString("sname"); String sex = rs.getString("sex"); int age = rs.getInt("age"); System.out.print(sno+"t"+sname+"t"+sex+"t"+age+"n"); } } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } }

5.5 UserInfo.java

复制代码
1
2
3
4
5
6
7
8
9
package Test1; public class UserInfo { public String account; public String password; public String username; }

5.6 UserInfoDao .java

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package Test1; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class UserInfoDao { public boolean validateUserInfo(String ac, String pwd){ boolean flag=false; //1.获取连接 try { //1.加载驱动类 Class.forName("com.mysql.jdbc.Driver"); //2.设置连接信息 String username="root"; //数据库用户名 String password="123456";//数据库密码 String url ="jdbc:mysql://127.0.0.1:3306/lanykey"; //3.设备连接 Connection conn = DriverManager.getConnection(url, username, password); System.out.println(conn); //3.1设置指令 String sql = "select * from UserInfo " + "where account='"+ac+"'" + " and password='"+pwd+"'"; //3.2通过连接创建语句执行者 Statement st = conn.createStatement(); ResultSet rs = st.executeQuery(sql);//sql包!! flag = rs.next(); //3.3通过语句执行者,操作数据库 st.execute(sql); st.close(); conn.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } return flag; } }

5.7 UserInfoDaoTest.java

复制代码
1
2
3
4
5
6
7
8
9
package Test1; public class UserInfoDaoTest { public static void main(String[] args) { UserInfoDao userInfoDao = new UserInfoDao(); System.err.println(userInfoDao.validateUserInfo("lanykey", "123456")); } }

最后

以上就是潇洒大门最近收集整理的关于java软件测试基础的全部内容,更多相关java软件测试基础内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(73)

评论列表共有 0 条评论

立即
投稿
返回
顶部