资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

java测试类的代码 java 测试

怎么写Java测试代码?

可以用main函数和JUnit来写测试代码。main是最早使用的,但是现在更流行的测试工具是JUnit。

成都创新互联成立于2013年,先为安徽等服务建站,安徽等地企业,进行企业商务咨询服务。为安徽企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

JUnit是一个Java语言的单元测试框架。它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中最为成功的一个。 JUnit有它自己的JUnit扩展生态圈。多数Java的开发环境都已经集成了JUnit作为单元测试的工具。

下面是一些具体的编写测试代码的技巧或较好的实践方法:

1. 不要用TestCase的构造函数初始化Fixture,而要用setUp()和tearDown()方法。

2. 不要依赖或假定测试运行的顺序,因为JUnit利用Vector保存测试方法。所以不同的平台会按不同的顺序从Vector中取出测试方法。

3. 避免编写有副作用的TestCase。例如:如果随后的测试依赖于某些特定的交易数据,就不要提交交易数据。简单的回滚就可以了。

4. 当继承一个测试类时,记得调用父类的setUp()和tearDown()方法。

5. 将测试代码和工作代码放在一起,一边同步编译和更新。(使用Ant中有支持junit的task.)

6. 测试类和测试方法应该有一致的命名方案。如在工作类名前加上test从而形成测试类名。

7. 确保测试与时间无关,不要依赖使用过期的数据进行测试。导致在随后的维护过程中很难重现测试。

8. 如果你编写的软件面向国际市场,编写测试时要考虑国际化的因素。不要仅用母语的Locale进行测试。

9. 尽可能地利用JUnit提供地assert/fail方法以及异常处理的方法,可以使代码更为简洁。

10.测试要尽可能地小,执行速度快。

11.不要硬性规定数据文件的路径。

12.利用Junit 的自动异常处理书写简洁的测试代码

事实上在Junit 中使用try-catch 来捕获异常是没有必要的,Junit 会自动捕获异常。那些没有被捕获的异常就被当成错误处理。

13. 充分利用Junit 的assert/fail 方法

assertSame()用来测试两个引用是否指向同一个对象

assertEquals()用来测试两个对象是否相等

14. 确保测试代码与时间无关

15. 使用文档生成器做测试文档。

用JAVA编写一个程序,要求如下:

实现代码如下:

Student类:

public class Student {

private String name;

private String sex;

private int age;

private double chinese;

private double math;

private double english;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getSex() {

return sex;

}

public void setSex(String sex) {

this.sex = sex;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public double getChinese() {

return chinese;

}

public void setChinese(double chinese) {

this.chinese = chinese;

}

public double getMath() {

return math;

}

public void setMath(double math) {

this.math = math;

}

public double getEnglish() {

return english;

}

public void setEnglish(double english) {

this.english = english;

}

}

-----------------------------------------------------------------

StudentTest类:(测试类)

import java.util.Scanner;

public class StudentTest {

public static void main(String[] args) {

Student student = new Student();

Scanner sc = new Scanner(System.in);

System.out.println("请输入姓名:");

student.setName(sc.next());

System.out.println("请输入性别:");

student.setSex(sc.next());

System.out.println("请输入年龄:");

student.setAge(sc.nextInt());

System.out.println("请输入语文成绩、数学成绩、英语成绩:");

student.setChinese(sc.nextDouble());

student.setMath(sc.nextDouble());

student.setEnglish(sc.nextDouble());

Double count = student.getChinese()+ student.getMath()+student.getEnglish();

System.out.println("姓名:"+student.getName()+" 性别:"+student.getSex()+" 年龄:"+student.getAge());

System.out.println("总分:"+count+" 平均分:"+count/3);

}

}

运行结果为:

求java代码,要求做一个测试类,实现以下功能之一。最好三个功能都有。

import java.util.*;

public class Admin {//管理类

Scanner in=new Scanner(System.in);

String msg="\t编号\t姓名\t年龄\tJava\tC#\tHtml\tSql\t总分\t平均分";

public void print(Student[] arr){//输出方法

System.out.println(msg);

for(int i=0;iarr.length;i++){

if(arr[i]!=null){

arr[i].setSum();

arr[i].setAvg();

System.out.println(arr[i]);

}

}

}

public boolean exist(int num,Student stu){//判断存在方法

if(stu!=null){

if(stu.getNum()==num){

return true;

}else{

return false;

}

}

return false;

}

public void create(String name,int age,Student[] arr){//添加方法

Student stu=new Student();

stu.setName(name);

stu.setAge(age);

int i=this.setIndex(arr);

stu.setNum(i);

if(i==9999){

System.out.println("添加学生人数已达到上限,不能再添加了!");

}else{

arr[i]=stu;

}

this.print(arr);

}

public int setIndex(Student[] arr){// 返回下标

for(int i=0;iarr.length;i++){

if(arr[i]==null){

return i;

}

}

return 9999;

}

public void select(int num,Student[] arr){//查找方法

System.out.println(msg);

for(int i=0;iarr.length;i++){

/*if(arr[i]!=null){

if(arr[i].getNum()==num){

System.out.println(arr[i]);

return;

}

}*/

if(this.exist(num, arr[i])){

System.out.println(arr[i]);

return;

}

}

System.out.println("\t---!没有这个学生的存在!---\t");

}

public void update(int num,Student[] arr){//更新方法

for(int i=0;iarr.length;i++){

if(this.exist(num, arr[i])){

System.out.println("请输入修改的姓名:");

arr[i].setName(in.next());

System.out.println("请输入修改的年龄:");

arr[i].setAge(in.nextInt());

System.out.println("---更新信息成功---");

this.print(arr);

return;

}

}

System.out.println("---更新信息失败---");

}

public void delete(int num,Student[] arr){//删除方法

for(int i=0;iarr.length;i++){

if(this.exist(num, arr[i])){

arr[i]=null;

System.out.println("---删除信息成功---");

this.print(arr);

return;

}

}

System.out.println("---删除信息失败---");

}

public void input(int num,Student[] arr){//输入方法

for(int i=0;iarr.length;i++){

if(this.exist(num, arr[i])){

System.out.println("请输入"+arr[i].getName()+"学生的java成绩:");

if(in.hasNextInt()){

arr[i].setJava(in.nextInt());

}

//arr[i].setJava(in.nextInt());

System.out.println("请输入"+arr[i].getName()+"学生的c_sharp成绩:");

if(in.hasNextInt()){

arr[i].setC_sharp(in.nextInt());

}

//arr[i].setC_sharp(in.nextInt());

System.out.println("请输入"+arr[i].getName()+"学生的html成绩:");

if(in.hasNextInt()){

arr[i].setHtml(in.nextInt());

}

//arr[i].setHtml(in.nextInt());

System.out.println("请输入"+arr[i].getName()+"学生的sql成绩:");

if(in.hasNextInt()){

arr[i].setSql(in.nextInt());

}

//arr[i].setSql(in.nextInt());

this.print(arr);

break;

}

}

}

public void couseSort(int num,Student[] arr){//学科排序方法

if(num==1){

for(int i=0;iarr.length-1;i++){

for(int j=i+1;jarr.length;j++){

if(arr[i]!=nullarr[j]!=null){

if(arr[i].getJava()arr[j].getJava()){

Student t=arr[i];

arr[i]=arr[j];

arr[j]=t;

}

}

}

}

}else if(num==2){

for(int i=0;iarr.length;i++){

for(int j=i+1;jarr.length;j++){

if(arr[i]!=nullarr[j]!=null){

if(arr[i].getC_sharp()arr[j].getC_sharp()){

Student t=arr[i];

arr[i]=arr[j];

arr[j]=t;

}

}

}

}

}else if(num==3){

for(int i=0;iarr.length;i++){

for(int j=i+1;jarr.length;j++){

if(arr[i]!=nullarr[j]!=null){

if(arr[i].getHtml()arr[j].getHtml()){

Student t=arr[i];

arr[i]=arr[j];

arr[j]=t;

}

}

}

}

}else if(num==4){

for(int i=0;iarr.length;i++){

for(int j=i+1;jarr.length;j++){

if(arr[i]!=nullarr[j]!=null){

if(arr[i].getSql()arr[j].getSql()){

Student t=arr[i];

arr[i]=arr[j];

arr[j]=t;

}

}

}

}

}

this.print(arr);

}

public void sumSort(Student[] arr){//总分排序方法

for(int i=0;iarr.length;i++){

for(int j=i+1;jarr.length;j++){

if(arr[i]!=nullarr[j]!=null){

if(arr[i].getSum()arr[j].getSum()){

Student t=arr[i];

arr[i]=arr[j];

arr[j]=t;

}

}

}

}

this.print(arr);

}

}

public class Student {//学生类

private int num;

private String name;

private int age;

private int java;

private int c_sharp;

private int html;

private int sql;

private int sum;

private double avg;

public int getNum(){

return num;

}

public void setNum(int num){

this.num=num;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public int getJava() {

return java;

}

public void setJava(int java) {

this.java = java;

}

public int getC_sharp() {

return c_sharp;

}

public void setC_sharp(int c_sharp) {

this.c_sharp = c_sharp;

}

public int getHtml() {

return html;

}

public void setHtml(int html) {

this.html = html;

}

public int getSql() {

return sql;

}

public void setSql(int sql) {

this.sql = sql;

}

public int getSum() {

return sum;

}

public void setSum() {

this.sum =this.java+this.c_sharp+this.html+this.sql;

}

public double getAvg() {

return avg;

}

public void setAvg() {

this.avg = this.sum/4;

}

public String toString(){

String msg="\t"+this.num+"\t"+this.name+"\t"+this.age+"\t"+this.java+"\t"+this.c_sharp+"\t"+this.html+"\t"+this.sql+"\t"+this.sum+"\t"+this.avg+"\t";

return msg;

}

}

import java.util.*;

public class Main {//主

public static void main(String[] args){

Scanner in=new Scanner(System.in);

System.out.println("---请定义学生的人数---");

Student[] stuArr=new Student[in.nextInt()];

Admin adminStu=new Admin();

while(true){

System.out.println("---选择你要执行的功能---");

System.out.println("0:添加一个学生");

System.out.println("1:查找一个学生");

System.out.println("2:根据编号更新信息");

System.out.println("3:根据编号删除学生");

System.out.println("4:根据编号输入成绩");

System.out.println("5:根据某门学科排序");

System.out.println("6:根据总分进行排序");

System.out.println("7:退出系统");

//int number =in.nextInt();//判断

String opt=in.next();

if(opt.equals("0")){

System.out.println("---执行添加方法---");

System.out.println("请输入学生的姓名:");

String name=in.next();

System.out.println("请输入学生的年龄:");

int age=in.nextInt();

adminStu.create(name,age,stuArr);

//adminStu.print(stuArr);

}else if(opt.equals("1")){

System.out.println("---执行查找方法---");

System.out.println("请输入学生的编号:");

int num=in.nextInt();

adminStu.select(num, stuArr);

}else if(opt.equals("2")){

System.out.println("---执行更新方法---");

System.out.println("请输入学生的编号:");

int num=in.nextInt();

/*System.out.println("请输入修改的姓名:");

String name=in.next();

System.out.println("请输入修改的年龄:");

int age=in.nextInt();*/

adminStu.update(num, stuArr);

//adminStu.print(stuArr);

}else if(opt.equals("3")){

System.out.println("---执行删除方法---");

System.out.println("请输入学生的编号:");

int num=in.nextInt();

adminStu.delete(num, stuArr);

//adminStu.print(stuArr);

} else if(opt.equals("4")){

System.out.println("---执行输入方法---");

System.out.println("请输入学生的编号:");

int num=in.nextInt();

adminStu.input(num, stuArr);

}else if(opt.equals("5")){

System.out.println("---执行学科排序方法---");

System.out.println("请选择需排序的学科:1.java、2.c_sharp、3.html、4.sql");

int num=in.nextInt();

adminStu.couseSort(num, stuArr);

}else if(opt.equals("6")){

System.out.println("---执行总分排序方法---");

adminStu.sumSort(stuArr);

}else if(opt.equals("7")){

System.out.println("--程序已退出--");

//break;//退出循环

System.exit(0);//退出程序

}

}

}

}

这是我以前编写的一个微型学生管理系统,希望可以给你点思路。休息时间不多就懒。

JAVA测试类怎么写,求大神指导下!

public class TestClass {

public static void main(String[] args) {

Hello hello = new Hello();

String str = hello.getInfo();

System.out.println(str);

}

}


网站题目:java测试类的代码 java 测试
当前网址:http://www.cdkjz.cn/article/ddgidsi.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220