软件测试——EditBox等价类划分扩展

这篇博客是对上星期的EditBox的一个扩展。上周博客简单的列出EditBox的等价类划分与测试用例设计,此篇博客将一个EditBox扩展为三个EditBox。原理跟前面完全相同,下面直接上结果:

 

等价类划分:

有效等价类 无效等价类
字符串a,b,c正确 a,b正确,c错误
  a,c正确,b错误
  b,c正确,a错误
  a,b错误,c正确
  a,c错误,b正确
  b,c错误,a正确
  a,b,c错误

根据等价类,简单设计测试用例:

a b c 结果
a123456 a4 vv a长度应为1-6
bOK
cOK
a2   df aOK
b长度应为1-6
cOK
    ss a长度应为1-6
b长度应为1-6
cOK

 

下面是界面及代码:

 

 

package editbox;


import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.TextField;
import javafx.scene.layout.AnchorPane;
import javafx.scene.text.Text;
import javafx.stage.Stage;

public class Editbox extends Application {
public static boolean isRegularRptCode(String rptCode,String regEx) {
Pattern p1 = Pattern.compile(regEx);
Matcher m1 = p1.matcher(rptCode);
boolean rs1 = m1.matches();
return rs1;
}
public static void main(String[] args) {
Editbox.launch(args);
}
public void start(Stage stage)throws Exception {
stage.setTitle("editbox");
AnchorPane root = new AnchorPane();
Scene scene = new Scene(root, 400, 400);
Text a= new Text("a");
AnchorPane.setTopAnchor(a, 25.0);
AnchorPane.setLeftAnchor(a, 50.0);
Text b= new Text("b");
AnchorPane.setTopAnchor(b, 75.0);
AnchorPane.setLeftAnchor(b, 50.0);
Text c= new Text("c");
AnchorPane.setTopAnchor(c, 125.0);
AnchorPane.setLeftAnchor(c, 50.0);
final TextField tf=new TextField();
AnchorPane.setTopAnchor(tf, 34.0);
AnchorPane.setLeftAnchor(tf, 145.0);
final TextField tf1=new TextField();
AnchorPane.setTopAnchor(tf1, 84.0);
AnchorPane.setLeftAnchor(tf1, 145.0);
final TextField tf2=new TextField();
AnchorPane.setTopAnchor(tf2, 134.0);
AnchorPane.setLeftAnchor(tf2, 145.0);
Button button = new Button("OK");
AnchorPane.setTopAnchor(button, 134.0);
AnchorPane.setLeftAnchor(button, 350.0);

button.setOnAction( new EventHandler<ActionEvent>( ) {

public void handle(ActionEvent actEvt) {
final String name_ = tf.getText();
final String name_1 = tf1.getText();
final String name_2 = tf2.getText();
if(name_.length()<1||name_.length()>6){
System.out.println("a长度应为1-6");
}
else if(!isRegularRptCode(name_,"[a-z,A-Z,0-9]*")){
System.out.println("a字符应为a-z,A-Z,0-9");
}
else{
System.out.println("aOK");
}
if(name_1.length()<1||name_1.length()>6){
System.out.println("b长度应为1-6");
}
else if(!isRegularRptCode(name_1,"[a-z,A-Z,0-9]*")){
System.out.println("b字符应为a-z,A-Z,0-9");
}
else{
System.out.println("bOK");
}
if(name_2.length()<1||name_2.length()>6){
System.out.println("c长度应为1-6");
}
else if(!isRegularRptCode(name_2,"[a-z,A-Z,0-9]*")){
System.out.println("c字符应为a-z,A-Z,0-9");
}
else{
System.out.println("cOK");
}
}
} );
root.getChildren().addAll(a,b,c,tf,tf1,tf2,button);
stage.setScene(scene);
stage.show();
} }

 

posted @ 2015-03-29 21:55  二班&任重  阅读(120)  评论(0编辑  收藏  举报