java测试代码
① 关于java的测试代码编写问题,急
却突然破碎的梯子。
还说他就是一棵树。
大声说话的你,忽然打个呃,不再言语,
但时光在赶,在衰老,流逝,
亭亭玉立,幻影渐渐地
在你的的这个哈哈
② java为什么要写测试代码
测试代码把项目细分成模块来检查独立的功能,避免项目整合的时候出现BUG而很难排错,初学java在小程序里是体会不到测试的重要性,因为小程序几乎也不需要做测试,就算出错也是一目了然,很快就解决了,但是还要养成测试的习惯.在大型项目中如果没有测试用例,那将是非常可怕的.
③ 有了java代码,如何测试
你这说的太笼统了,应该具体些。
有了Java代码之后
1、可以在代码中写些测试的方法,把你想要验证的东西,输出看一下。
2、可以用Debug的形式,跟踪代码执行,验证程序的逻辑是否正确。
3、利用JUnit写断言,测试结果
④ java中如何写测试代码
对,写个main函数给个对象就可以测了。。。
⑤ 求Java语言编写的可测试的程序源代码
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class DoChar {
private BufferedReader buf;
public void getWord() {
buf = new BufferedReader(new InputStreamReader(System.in));
try {
int a=0;
int b=0;
int c=0;
int d=0;
int e=0;
String str = buf.readLine();
char[] word = str.toCharArray();
for(int i=0;i<word.length;i++){
if(word[i]=='a'){
a++;
}
if(word[i]=='b'){
b++;
}
if(word[i]=='c'){
c++;
}
if(word[i]=='d'){
d++;
}
if(word[i]=='e'){
e++;
}
}
System.out.println("a is "+a);
System.out.println("b is "+b);
System.out.println("c is "+c);
System.out.println("d is "+d);
System.out.println("e is "+e);
String[] strs = str.split(" ");
for(int i=0;i<strs.length;i++){
System.out.println(strs[i].length());
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
DoChar demo = new DoChar();
demo.getWord();
}
}
⑥ 求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;i<arr.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;i<arr.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;i<arr.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;i<arr.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;i<arr.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;i<arr.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;i<arr.length-1;i++){
for(int j=i+1;j<arr.length;j++){
if(arr[i]!=null&arr[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;i<arr.length;i++){
for(int j=i+1;j<arr.length;j++){
if(arr[i]!=null&arr[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;i<arr.length;i++){
for(int j=i+1;j<arr.length;j++){
if(arr[i]!=null&arr[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;i<arr.length;i++){
for(int j=i+1;j<arr.length;j++){
if(arr[i]!=null&arr[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;i<arr.length;i++){
for(int j=i+1;j<arr.length;j++){
if(arr[i]!=null&arr[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测试题,求代码
/**
*publicbooleanequals(Strings)重点测试
*publicbooleancontains(Strings)
*publicintindexOf(Stringstr)
*publicStringsubstring(intstartpoint)
*publicStringtrim()
*publicintlength()
*publicbooleanstartsWith(Strings)endsWith()
*@authorAdministrator
*
*/
publicclassDemo1{
publicstaticvoidmain(String[]args){
/*publicbooleanequals(Strings)用于比较字符串的值是否相等*/
Stringstr1="HelloWorld!";
Stringstr2="你好!";
Stringstr3="HelloWorld!";
Stringstr4="H";
booleanbo;
intindex;
bo=str1.equals(str2)?true:false;//值相等返回true否则false
System.out.println(bo);
bo=str1.equals(str3)?true:false;
System.out.println(bo);
/*publicbooleancontains(Strings)字符串的包含关系*/
bo=str1.contains(str2)?true:false;
System.out.println(bo);
bo=str1.contains(str4)?true:false;
System.out.println(bo);
/*publicintindexOf(Stringstr)获取指定字符串第一次出现的下标*/
index=str1.indexOf("H");
System.out.println(index);
/*publicStringsubstring(intstartpoint)获取指定下标到结束的所有字符含指定下标的字符*/
Stringstr5=str1.substring(4);
System.out.println(str5);
/*publicStringtrim()去掉头尾空格但不能去掉中间的*/
System.out.println(str1.trim());
/*publicintlength()字符串长度*/
System.out.println(str1.length());
/*publicbooleanstartsWith(Strings)endsWith()判断是否以指定字符开头/结尾*/
bo=str1.startsWith("");//空格
System.out.println(bo);
bo=str1.endsWith("H");
System.out.println(bo);
}
}
首先String类java本来就提供你莫非去重写方法?你觉得有必要?我们是搞应用的比如你学一门语言你只要说的流利就OK人家才不关系你对语法研究有多透彻我写的全是测试不想写类你真想要还不如去找源码来看更省事人家都定义好了。
不说了直接上图跟上面复制的一样
和内容一样!
⑧ 有哪些方法可以进行Java单元测试
在软件开发过程中,每个单元的运行都是非常关键的,并且直接关系到后期程序员的运行。那么在进行软件开发过程中,经常使用到的单元测试方法有哪些呢,一个好的单元测试是如何进行实现的?下面云南电脑培训为大家介绍进行Java单元测试的具体方法。
1、使用框架进行单元测试
Java能够提供单元测试方法的框架,在测试过程中,测试NG和JUnit是现在流行的测试框架。JUnit和TestNG框架测试有几个重要功能:设置和运行很容易;允许忽略或分组,并一起运行多个测试;支持参数化测试,并且云南IT培训发现能够通过在运行时指定不同的值来执行单元测试。
2、谨慎使用测试驱动开发
测试驱动开发是一个软件开发的过程。在整个开发过程中,在开始编码的时候,应该根据程序的需求进行编程测试。但是昆明IT培训发现由于这个时候还没有进行编程,所以初次测试会面临失败,只需要写入少量的代码就能通过测试,进行重置代码。
3、测试代码的覆盖率
代码覆盖率是以百分比测定执行单元测试时进行的代码量。通常,高覆盖率的代码包含未被检测出的错误的概率较低,因为更多的源代码在测试中被执行。测试代码覆盖率的工具有:Clover,Corbetura,JaCoCo。使用工具测试能够更好的提高测试质量。
4、将测试数据外部优化
在JUnit4之前,测试用例执行的数据必须被测试用例硬编码,这会引起限制。为了使用不同的数据执行测试,必须修正测试用例代码。但是,昆明电脑培训认为JUnit4以及TestNG支持外部化测试数据,无需变更源代码,就可以对不同的数据组执行测试用例。