黑盒测试方法-等价类划分
描述:输入一个用户名,判断是否合法。
合法条件:长度0-6的英文字母或数字
所谓等价类是指输入域的某个互不相交的子集合,所有等价类的并集便是整个输入域。目的在于测试用例的无冗余性。
划分等价类( valid / invalid )
(1)有效等价类:检验程序是否实现了规格说明预先规定的功能和性能。
(2)无效等价类:检查软件功能和性能的实现是否有不符合规格说明要求的地方。
进行测试,划分等价类
有效等价类:(1)长度0-6 (2)英文字母或数字
无效等价类:(1)长度:0,7 (2)英文/数字以外字符,控制字符,标点符号
设计测试用例
输入 预期输出 实际输出
1234a 合法 合法
7777777 不合法 不合法
999. 不合法 不合法
截图
主要代码:
final String str1 = "合法";
final String str2 = "不合法";
final TextField textfiled1 = new TextField();
root.getChildren().addAll(textfiled1);
AnchorPane.setTopAnchor(textfiled1,100.0);
AnchorPane.setLeftAnchor(textfiled1,100.0);
Text text1 = new Text();
text1.setText("输入用户名");
root.getChildren().addAll(text1);
AnchorPane.setTopAnchor(text1,70.0);
AnchorPane.setLeftAnchor(text1,100.0);
final Text text2 = new Text();
root.getChildren().addAll(text2);
AnchorPane.setTopAnchor(text2,100.0);
AnchorPane.setLeftAnchor(text2,300.0);
Button btn = new Button("确定");
root.getChildren().addAll(btn);
AnchorPane.setTopAnchor(btn,150.0);
AnchorPane.setLeftAnchor(btn,100.0);
btn.setOnMouseClicked(new EventHandler<MouseEvent>() {
public void handle(MouseEvent arg0) {
String s = textfiled1.getText();
if ((s.length() > 6) || (s.length() < 1))
{
text2.setText(str2);
return;
}
boolean judge = true;
for (int i = 0; i < s.length();i++)
{
char c = s.charAt(i);
if (!((c >= 'A' && c <= 'Z')||(c >= 'a' && c <='z')||(c >= '0' && c <= '9')))
{
judge = false;
break;
}
}
if (!judge)
{
text2.setText(str2);
}
else
{
text2.setText(str1);
}
}
});