添加单选、多选、日期用例
This commit is contained in:
parent
34c56e663f
commit
1dfd94e886
|
@ -1,10 +1,38 @@
|
|||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<cases project='AddInformation'>
|
||||
<case name='addTextboxCase'>
|
||||
<case name='textboxBasicCase'>
|
||||
<steps>
|
||||
<step id='1' value='不填写或只输入空格,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='2' value='填写特殊字符或HTML代码,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='3' value='输入非*{输入限制}*字符,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='12' value='填写一个与*{信息}*列表中已存在相同关键词的*{控件名称}*信息,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='13' value='填写*{控件名称}*信息后点击清空按钮,再点击“*{按钮名称}*”按钮'/>
|
||||
</steps>
|
||||
<excepts>
|
||||
<except id='1' value='*{成功预期前文}**{信息}*创建成功,界面返回到列表页,其*{信息}*列表上显示新增的信息*{成功预期后文}*'/>
|
||||
<except id='2' value='*{失败预期前文}**{信息}*创建失败,并给出相应的提示*{失败预期后文}*'/>
|
||||
<except id='3' value='点击清空按钮后,填写的内容被清空,点击“*{按钮名称}*”按钮后,*{成功预期前文}**{信息}*创建成功,界面返回到列表页,其*{信息}*列表上显示新增的信息*{成功预期后文}*'/>
|
||||
<except id='4' value='点击清空按钮后,填写的内容被清空,点击“*{按钮名称}*”按钮后,*{失败预期前文}**{信息}*创建失败,并给出相应的提示*{失败预期后文}*'/>
|
||||
</excepts>
|
||||
<titles>
|
||||
<title id='1' value='新增不同*{控件名称}*的*{信息}*' />
|
||||
</titles>
|
||||
<preconditions>
|
||||
<precondition id='1' value='已在新增*{信息}*的页面上' />
|
||||
<precondition id='2' value='除*{控件名称}*外,其他信息均正确填写' />
|
||||
</preconditions>
|
||||
<ranks>
|
||||
<rank id='1' value='1' />
|
||||
<rank id='2' value='2' />
|
||||
<rank id='3' value='3' />
|
||||
</ranks>
|
||||
<keys>
|
||||
<key id='1' value='*{控件名称}*、*{信息}*、新增' />
|
||||
</keys>
|
||||
</case>
|
||||
|
||||
<case name='addTextboxCase'>
|
||||
<steps>
|
||||
<step id='4' value='输入小于*{最短长度限制}*个字符,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='5' value='输入*{最短长度限制}*个字符,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='6' value='输入大于*{最长长度限制}*个字符,点击“*{按钮名称}*”按钮'/>
|
||||
|
@ -13,8 +41,6 @@
|
|||
<step id='9' value='输入数字*{数字最小限制}*,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='10' value='输入大于*{数字最大限制}*的数字,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='11' value='输入数字*{数字最大限制}*,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='12' value='填写一个与*{信息}*列表中已存在相同关键词的*{控件名称}*信息,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='13' value='填写*{控件名称}*信息后点击清空按钮,再点击“*{按钮名称}*”按钮'/>
|
||||
<step id='14' value='输入大于*{小数位数}*位小数位的数字,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='15' value='输入等于*{小数位数}*位小数位的数字,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='16' value='输入整数,点击“*{按钮名称}*”按钮'/>
|
||||
|
@ -46,13 +72,16 @@
|
|||
|
||||
<case name='addSelectboxCase'>
|
||||
<steps>
|
||||
<step id='1' value='不进行选择或选择空选项,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='2' value='选择选项中的第一项,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='1' value='选择空选项,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='2' value='选择选项中的第一项有效的选项,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='3' value='选择选项中的最后一项,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='4' value='选择选项后,点击清除按钮'/>
|
||||
</steps>
|
||||
<excepts>
|
||||
<except id='1' value='*{成功预期前文}**{信息}*创建成功,界面返回到列表页,其*{信息}*列表上显示新增的信息*{成功预期后文}*'/>
|
||||
<except id='2' value='*{失败预期前文}**{信息}*创建失败,并给出相应的提示*{失败预期后文}*'/>
|
||||
<except id='3' value='选项变为默认选项或第一个选项'/>
|
||||
<except id='4' value='选项变为空选项'/>
|
||||
</excepts>
|
||||
<titles>
|
||||
<title id='1' value='新增不同*{控件名称}*的*{信息}*' />
|
||||
|
@ -74,14 +103,16 @@
|
|||
<case name='addRadioButtonCase'>
|
||||
<steps>
|
||||
<step id='1' value='从第一个选项开始,将所有的选项依次点击'/>
|
||||
<step id='2' value='不进行选择,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='2' value='不进行选择(不改变默认选项),点击“*{按钮名称}*”按钮'/>
|
||||
<step id='3' value='选择选项中的第一项,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='4' value='选择选项中的最后一项,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='5' value='查看*{控件名称}*选项'/>
|
||||
</steps>
|
||||
<excepts>
|
||||
<except id='1' value='*{成功预期前文}**{信息}*创建成功,界面返回到列表页,其*{信息}*列表上显示新增的信息*{成功预期后文}*'/>
|
||||
<except id='2' value='*{失败预期前文}**{信息}*创建失败,并给出相应的提示*{失败预期后文}*'/>
|
||||
<except id='3' value='不会出现有两个或以上的选项被选中的情况'/>
|
||||
<except id='4' value='*{控件名称}*选项应有一个默认选项'/>
|
||||
</excepts>
|
||||
<titles>
|
||||
<title id='1' value='新增不同*{控件名称}*的*{信息}*' />
|
||||
|
@ -133,35 +164,6 @@
|
|||
</case>
|
||||
|
||||
<case name='addDateCase'>
|
||||
<steps>
|
||||
<step id='1' value='不选择时间,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='2' value='选择当前的时间,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='3' value='选择时间后清空时间,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='4' value='手动输入正确格式的日期,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='5' value='手动输入非正确格式的日期,点击“*{按钮名称}*”按钮'/>
|
||||
</steps>
|
||||
<excepts>
|
||||
<except id='1' value='*{成功预期前文}**{信息}*创建成功,界面返回到列表页,其*{信息}*列表上显示新增的信息*{成功预期后文}*'/>
|
||||
<except id='2' value='*{失败预期前文}**{信息}*创建失败,并给出相应的提示*{失败预期后文}*'/>
|
||||
</excepts>
|
||||
<titles>
|
||||
<title id='1' value='新增不同*{控件名称}*的*{信息}*' />
|
||||
</titles>
|
||||
<preconditions>
|
||||
<precondition id='1' value='已在新增*{信息}*的页面上' />
|
||||
<precondition id='2' value='除*{控件名称}*外,其他信息均正确填写' />
|
||||
</preconditions>
|
||||
<ranks>
|
||||
<rank id='1' value='1' />
|
||||
<rank id='2' value='2' />
|
||||
<rank id='3' value='3' />
|
||||
</ranks>
|
||||
<keys>
|
||||
<key id='1' value='*{控件名称}*、*{信息}*、新增' />
|
||||
</keys>
|
||||
</case>
|
||||
|
||||
<case name='addStartDateCase'>
|
||||
<steps>
|
||||
<step id='1' value='不选择时间,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='2' value='选择当前的时间,点击“*{按钮名称}*”按钮'/>
|
||||
|
@ -170,37 +172,8 @@
|
|||
<step id='5' value='手动输入非正确格式的日期,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='6' value='输入或选择大于*{结束日期}*的日期,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='7' value='选择大于*{结束日期}*的日期,点击“*{按钮名称}*”按钮'/>
|
||||
</steps>
|
||||
<excepts>
|
||||
<except id='1' value='*{成功预期前文}**{信息}*创建成功,界面返回到列表页,其*{信息}*列表上显示新增的信息*{成功预期后文}*'/>
|
||||
<except id='2' value='*{失败预期前文}**{信息}*创建失败,并给出相应的提示*{失败预期后文}*'/>
|
||||
</excepts>
|
||||
<titles>
|
||||
<title id='1' value='新增不同*{控件名称}*的*{信息}*' />
|
||||
</titles>
|
||||
<preconditions>
|
||||
<precondition id='1' value='已在新增*{信息}*的页面上' />
|
||||
<precondition id='2' value='除*{控件名称}*外,其他信息均正确填写' />
|
||||
</preconditions>
|
||||
<ranks>
|
||||
<rank id='1' value='1' />
|
||||
<rank id='2' value='2' />
|
||||
<rank id='3' value='3' />
|
||||
</ranks>
|
||||
<keys>
|
||||
<key id='1' value='*{控件名称}*、*{信息}*、新增' />
|
||||
</keys>
|
||||
</case>
|
||||
|
||||
<case name='addEndDateCase'>
|
||||
<steps>
|
||||
<step id='1' value='不选择时间,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='2' value='选择当前的时间,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='3' value='选择时间后清空时间,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='4' value='手动输入正确格式的日期,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='5' value='手动输入非正确格式的日期,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='6' value='输入或选择小于*{开始日期}*的日期,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='7' value='选择小于*{开始日期}*的日期,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='8' value='输入或选择小于*{开始日期}*的日期,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='9' value='选择小于*{开始日期}*的日期,点击“*{按钮名称}*”按钮'/>
|
||||
</steps>
|
||||
<excepts>
|
||||
<except id='1' value='*{成功预期前文}**{信息}*创建成功,界面返回到列表页,其*{信息}*列表上显示新增的信息*{成功预期后文}*'/>
|
||||
|
@ -225,13 +198,12 @@
|
|||
|
||||
<case name='addPhoneCase'>
|
||||
<steps>
|
||||
<step id='1' value='不进行输入,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='2' value='输入非数字字符,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='3' value='输入大于11位的数字,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='4' value='输入小于11位的数字,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='5' value='输入大于7位的数字,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='6' value='输入小于7位的数字,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='7' value='输入不符合规则但长度符合规则的数字,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='1' value='输入座机区位号 + “-”符号 + 正确座机号后,点击“*{按钮名称}*”按钮'/>
|
||||
</steps>
|
||||
<excepts>
|
||||
<except id='1' value='*{成功预期前文}**{信息}*创建成功,界面返回到列表页,其*{信息}*列表上显示新增的信息*{成功预期后文}*'/>
|
||||
|
@ -256,8 +228,6 @@
|
|||
|
||||
<case name='addIDCardCase'>
|
||||
<steps>
|
||||
<step id='1' value='不进行输入,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='2' value='输入非数字字符,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='3' value='输入15位的证件信息,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='4' value='输入18位的证件信息,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='5' value='输入末尾带“X”或“x”的证件信息,点击“*{按钮名称}*”按钮'/>
|
||||
|
@ -265,7 +235,6 @@
|
|||
<step id='7' value='输入小于18位但大于15位的数字,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='8' value='输入小于15位的数字,点击“*{按钮名称}*”按钮'/>
|
||||
<step id='9' value='输入不符合证件规则但长度符合规则的数字(如123456789012345678),点击“*{按钮名称}*”按钮'/>
|
||||
<step id='10' value='输入存在的证件信息,点击“*{按钮名称}*”按钮'/>
|
||||
</steps>
|
||||
<excepts>
|
||||
<except id='1' value='*{成功预期前文}**{信息}*创建成功,界面返回到列表页,其*{信息}*列表上显示新增的信息*{成功预期后文}*'/>
|
||||
|
|
|
@ -146,7 +146,7 @@ public class InformationCase extends Case {
|
|||
|
||||
/**
|
||||
* 用于生成普通文本框测试用例
|
||||
* @param name 文本框名称(控件名称)
|
||||
* @param name 控件名称
|
||||
* @param isMust 是否必填
|
||||
* @param isRepeat 是否可以与存在的内容重复
|
||||
* @param isClear 是否有按钮可以清空文本框
|
||||
|
@ -166,7 +166,7 @@ public class InformationCase extends Case {
|
|||
|
||||
//----------------------------------------------------------------
|
||||
//存储步骤与预期信息
|
||||
textboxCommonCase(caseName, isMust, isRepeat, isClear, inputRuleTypes);
|
||||
textboxCommonCase(isMust, isRepeat, isClear, inputRuleTypes);
|
||||
|
||||
//----------------------------------------------------------------
|
||||
|
||||
|
@ -191,7 +191,7 @@ public class InformationCase extends Case {
|
|||
* 2.输入长度限制为最多输入10个字符时:addLengthRuleTextboxCase(..., 0, 10, ...)<br>
|
||||
* 3.输入长度限制为最少输入2个字符时:addLengthRuleTextboxCase(..., 2, 0, ...)<br>
|
||||
* 注意:若两个参数传入一样,且都不为0,则等价于第2中情况;若两个参数都小于等于0时,则抛出异常
|
||||
* @param name 文本框名称(控件名称)
|
||||
* @param name 控件名称
|
||||
* @param isMust 是否必填
|
||||
* @param isRepeat 是否可以与存在的内容重复
|
||||
* @param isClear 是否有按钮可以清空文本框
|
||||
|
@ -215,7 +215,7 @@ public class InformationCase extends Case {
|
|||
//----------------------------------------------------------------------
|
||||
//存储步骤与预期信息
|
||||
//添加通用用例
|
||||
textboxCommonCase(caseName, isMust, isRepeat, isClear, inputRuleTypes);
|
||||
textboxCommonCase(isMust, isRepeat, isClear, inputRuleTypes);
|
||||
|
||||
//添加输入长度限制相关的测试用例
|
||||
//判断传入的限制参数是否有小于0的参数,参数小于0则直接转换为0
|
||||
|
@ -279,7 +279,7 @@ public class InformationCase extends Case {
|
|||
* 2.输入限制数字最大输入10时:addLengthRuleTextboxCase(..., InformationCase.MIN_NUMBER, 10, ...)<br>
|
||||
* 3.输入限制数字为2~10之间时:addLengthRuleTextboxCase(..., 2, 10, ...)<br>
|
||||
* 注意:若两个参数传入一样或最小参数为{@link #MIN_NUMBER}, 最大参数为{@link #MAX_NUMBER},则抛出异常
|
||||
* @param name 文本框名称(控件名称)
|
||||
* @param name 控件名称
|
||||
* @param isMust 是否必填
|
||||
* @param isRepeat 是否可以与存在的内容重复
|
||||
* @param isClear 是否有按钮可以清空文本框
|
||||
|
@ -304,7 +304,7 @@ public class InformationCase extends Case {
|
|||
//----------------------------------------------------------------------
|
||||
//存储步骤与预期信息
|
||||
//添加通用用例
|
||||
textboxCommonCase(caseName, isMust, isRepeat, isClear, InputRuleType.NUM);
|
||||
textboxCommonCase(isMust, isRepeat, isClear, InputRuleType.NUM);
|
||||
|
||||
//添加输入数字限制相关的测试用例
|
||||
//判断最大最小值是否一致,一致则抛出异常
|
||||
|
@ -385,16 +385,350 @@ public class InformationCase extends Case {
|
|||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 用于生成与号码相关的测试用例,通过{@link PhoneType}来控制传入号码类型
|
||||
* @param name 控件名称
|
||||
* @param isMust 是否必填
|
||||
* @param isRepeat 是否可以与存在的内容重复
|
||||
* @param isClear 是否有按钮可以清空文本框
|
||||
* @param phoneTypes 号码类型枚举,可通过类名进行调用
|
||||
* @return 类本身
|
||||
*/
|
||||
public Case addPhoneCase(String name, boolean isMust, boolean isRepeat, boolean isClear, PhoneType...phoneTypes) {
|
||||
//清空字段的内容
|
||||
clearFieldText();
|
||||
// 存储case标签的name属性内容
|
||||
String caseName = "addPhoneCase";
|
||||
//添加控件名称
|
||||
wordMap.put(WordType.CONTROL_NAME.getName(), name);
|
||||
//转换输入限制为集合类型
|
||||
List<PhoneType> phoneRules = Arrays.asList(phoneTypes);
|
||||
|
||||
//存储标题信息
|
||||
addFieldText(LabelType.TITLE, getLabelText(caseName, LabelType.TITLE, "1"));
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
//存储步骤与预期信息
|
||||
//添加通用用例
|
||||
textboxCommonCase(isMust, isRepeat, isClear, InputRuleType.NUM);
|
||||
|
||||
//添加手机相关的测试用例
|
||||
if (phoneRules.contains(PhoneType.MOBLE)) {
|
||||
//大于11位
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "3"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "2"));
|
||||
//小于11位
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "4"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "2"));
|
||||
}
|
||||
|
||||
//添加座机相关的测试用例
|
||||
if (phoneRules.contains(PhoneType.FIXED)) {
|
||||
//大于7位
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "5"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "2"));
|
||||
//小于7位
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "6"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "2"));
|
||||
//区位号
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "1"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
}
|
||||
|
||||
//长度符合但不和规则的用例
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "7"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "2"));
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
//存储前置条件信息
|
||||
addFieldText(LabelType.PRECONDITION, getAllLabelText(caseName, LabelType.PRECONDITION));
|
||||
//存储关键词信息
|
||||
addFieldText(LabelType.KEY, getAllLabelText(caseName, LabelType.KEY));
|
||||
//存储优先级信息
|
||||
addFieldText(LabelType.RANK, getLabelText(caseName, LabelType.RANK, isMust ? "1" : "2"));
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 用于生成身份证相关的测试用例
|
||||
* @param name 控件名称
|
||||
* @param isMust 是否必填
|
||||
* @param isRepeat 是否可以与存在的内容重复
|
||||
* @param isClear 是否有按钮可以清空文本框
|
||||
* @return 类本身
|
||||
*/
|
||||
public Case addIDCardCase(String name, boolean isMust, boolean isRepeat, boolean isClear) {
|
||||
//清空字段的内容
|
||||
clearFieldText();
|
||||
// 存储case标签的name属性内容
|
||||
String caseName = "addIDCardCase";
|
||||
//添加控件名称
|
||||
wordMap.put(WordType.CONTROL_NAME.getName(), name);
|
||||
|
||||
//存储标题信息
|
||||
addFieldText(LabelType.TITLE, getLabelText(caseName, LabelType.TITLE, "1"));
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
//存储步骤与预期信息
|
||||
//添加通用用例
|
||||
textboxCommonCase(isMust, isRepeat, isClear, InputRuleType.NUM);
|
||||
|
||||
//输入15位
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "3"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
//输入18位
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "4"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
//输入末尾带“X”或“x”
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "5"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
|
||||
//输入大于18位
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "6"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "2"));
|
||||
//输入小于18位大于15位
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "7"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "2"));
|
||||
//输入小于15位
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "8"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "2"));
|
||||
|
||||
//输入不符合规则
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "9"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "2"));
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
//存储前置条件信息
|
||||
addFieldText(LabelType.PRECONDITION, getAllLabelText(caseName, LabelType.PRECONDITION));
|
||||
//存储关键词信息
|
||||
addFieldText(LabelType.KEY, getAllLabelText(caseName, LabelType.KEY));
|
||||
//存储优先级信息
|
||||
addFieldText(LabelType.RANK, getLabelText(caseName, LabelType.RANK, isMust ? "1" : "2"));
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 该方法用于生成下拉框的测试用例
|
||||
* @param name 控件名称
|
||||
* @param isMust 是否必填
|
||||
* @param hasEmpty 是否存在空选项
|
||||
* @param isClear 是否有按钮可以清空文本框
|
||||
* @return 类本身
|
||||
*/
|
||||
public Case addSelectboxCase(String name, boolean isMust, boolean hasEmpty, boolean isClear) {
|
||||
//清空字段的内容
|
||||
clearFieldText();
|
||||
// 存储case标签的name属性内容
|
||||
String caseName = "addSelectboxCase";
|
||||
//添加控件名称
|
||||
wordMap.put(WordType.CONTROL_NAME.getName(), name);
|
||||
|
||||
//存储标题信息
|
||||
addFieldText(LabelType.TITLE, getLabelText(caseName, LabelType.TITLE, "1"));
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
//存储步骤与预期信息
|
||||
//选择选项后清空
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "4"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, hasEmpty ? "4" : "3"));
|
||||
|
||||
//添加空选项用例
|
||||
if (hasEmpty) {
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "1"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, isMust ? "1" : "2"));
|
||||
}
|
||||
|
||||
//添加选择第一个选项
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "2"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
|
||||
//添加选择最后一个选项
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "3"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
//存储前置条件信息
|
||||
addFieldText(LabelType.PRECONDITION, getAllLabelText(caseName, LabelType.PRECONDITION));
|
||||
//存储关键词信息
|
||||
addFieldText(LabelType.KEY, getAllLabelText(caseName, LabelType.KEY));
|
||||
//存储优先级信息
|
||||
addFieldText(LabelType.RANK, getLabelText(caseName, LabelType.RANK, isMust ? "1" : "2"));
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 用于生成单选按钮的测试用例
|
||||
* @param name 控件名称
|
||||
* @return 类本身
|
||||
*/
|
||||
public Case addRadioButtonCase(String name) {
|
||||
//清空字段的内容
|
||||
clearFieldText();
|
||||
// 存储case标签的name属性内容
|
||||
String caseName = "addRadioButtonCase";
|
||||
//添加控件名称
|
||||
wordMap.put(WordType.CONTROL_NAME.getName(), name);
|
||||
|
||||
//存储标题信息
|
||||
addFieldText(LabelType.TITLE, getLabelText(caseName, LabelType.TITLE, "1"));
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
//存储步骤与预期信息
|
||||
//选择选项后清空
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "5"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "4"));
|
||||
|
||||
//依次选择选项
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "1"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "3"));
|
||||
|
||||
//不改变默认选项
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "2"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
|
||||
//选第一个
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "3"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
|
||||
//选最后一个
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "4"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
//存储前置条件信息
|
||||
addFieldText(LabelType.PRECONDITION, getAllLabelText(caseName, LabelType.PRECONDITION));
|
||||
//存储关键词信息
|
||||
addFieldText(LabelType.KEY, getAllLabelText(caseName, LabelType.KEY));
|
||||
//存储优先级信息
|
||||
addFieldText(LabelType.RANK, getLabelText(caseName, LabelType.RANK, "1"));
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 用于生成多选按钮的测试用例
|
||||
* @param name 控件名称
|
||||
* @param isMust 是否必填
|
||||
* @return 类本身
|
||||
*/
|
||||
public Case addCheckboxCase(String name, boolean isMust) {
|
||||
//清空字段的内容
|
||||
clearFieldText();
|
||||
// 存储case标签的name属性内容
|
||||
String caseName = "addCheckboxCase";
|
||||
//添加控件名称
|
||||
wordMap.put(WordType.CONTROL_NAME.getName(), name);
|
||||
|
||||
//存储标题信息
|
||||
addFieldText(LabelType.TITLE, getLabelText(caseName, LabelType.TITLE, "1"));
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
//存储步骤与预期信息
|
||||
//依次选择选项
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "1"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "3"));
|
||||
//再次依次选择选项
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "2"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "4"));
|
||||
|
||||
//不进行选择
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "3"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, isMust ? "2" : "1"));
|
||||
|
||||
//选择第一个
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "4"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
|
||||
//选择最后一个
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "5"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
|
||||
//选择多个
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "6"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
//存储前置条件信息
|
||||
addFieldText(LabelType.PRECONDITION, getAllLabelText(caseName, LabelType.PRECONDITION));
|
||||
//存储关键词信息
|
||||
addFieldText(LabelType.KEY, getAllLabelText(caseName, LabelType.KEY));
|
||||
//存储优先级信息
|
||||
addFieldText(LabelType.RANK, getLabelText(caseName, LabelType.RANK, "1"));
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 用于生成与日期相关的测试用例
|
||||
* @param name 控件名称
|
||||
* @param isMust 是否必填
|
||||
* @param isInput 是否可以输入
|
||||
* @param isClear 是否可以清除
|
||||
* @return 类本身
|
||||
*/
|
||||
public Case addDateCase(String name, boolean isMust, boolean isInput, boolean isClear) {
|
||||
//清空字段的内容
|
||||
clearFieldText();
|
||||
// 存储case标签的name属性内容
|
||||
String caseName = "addDateCase";
|
||||
//添加控件名称
|
||||
wordMap.put(WordType.CONTROL_NAME.getName(), name);
|
||||
|
||||
//存储标题信息
|
||||
addFieldText(LabelType.TITLE, getLabelText(caseName, LabelType.TITLE, "1"));
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
//存储步骤与预期信息
|
||||
//依次选择选项
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "1"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "3"));
|
||||
//再次依次选择选项
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "2"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "4"));
|
||||
|
||||
//不进行选择
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "3"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, isMust ? "2" : "1"));
|
||||
|
||||
//选择第一个
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "4"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
|
||||
//选择最后一个
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "5"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
|
||||
//选择多个
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "6"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
//存储前置条件信息
|
||||
addFieldText(LabelType.PRECONDITION, getAllLabelText(caseName, LabelType.PRECONDITION));
|
||||
//存储关键词信息
|
||||
addFieldText(LabelType.KEY, getAllLabelText(caseName, LabelType.KEY));
|
||||
//存储优先级信息
|
||||
addFieldText(LabelType.RANK, getLabelText(caseName, LabelType.RANK, "1"));
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 用于生成文本框类型共同的测试用例步骤与预期(即普通文本框测试用例的步骤与预期)
|
||||
* @param name 文本框名称(控件名称)
|
||||
* @param name 控件名称
|
||||
* @param isMust 是否必填
|
||||
* @param isRepeat 是否可以与存在的内容重复
|
||||
* @param isClear 是否有按钮可以清空文本框
|
||||
*/
|
||||
private void textboxCommonCase(String name, boolean isMust, boolean isRepeat, boolean isClear, InputRuleType... inputRuleTypes) {
|
||||
private void textboxCommonCase(boolean isMust, boolean isRepeat, boolean isClear, InputRuleType... inputRuleTypes) {
|
||||
// 存储case标签的name属性内容
|
||||
String caseName = "addTextboxCase";
|
||||
String caseName = "textboxBasicCase";
|
||||
//转换输入限制为集合类型
|
||||
List<InputRuleType> inputRules = Arrays.asList(inputRuleTypes);
|
||||
|
||||
|
@ -428,6 +762,42 @@ public class InformationCase extends Case {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加日期相关的基本用例
|
||||
* @param isMust 是否必填
|
||||
* @param isInput 是否可输入
|
||||
* @param isClear 是否可清空
|
||||
*/
|
||||
private void dateboxCommonCase(boolean isMust, boolean isInput, boolean isClear) {
|
||||
// 存储case标签的name属性内容
|
||||
String caseName = "addDateCase";
|
||||
|
||||
//不填写
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "1"));
|
||||
//根据是否必填来判断填入成功或失败预期
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, isMust ? "2" : "1"));
|
||||
|
||||
//选择当前时间
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "2"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, isMust ? "2" : "1"));
|
||||
|
||||
//选择时间后清除时间
|
||||
if (isClear) {
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "3"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, isMust ? "2" : "1"));
|
||||
}
|
||||
|
||||
//手动输入时间
|
||||
if (isInput) {
|
||||
//输入正确格式
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "4"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "1"));
|
||||
//输入不正确的格式
|
||||
addFieldText(LabelType.STEP, getLabelText(caseName, LabelType.STEP, "5"));
|
||||
addFieldText(LabelType.EXCEPT, getLabelText(caseName, LabelType.EXCEPT, "2"));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* <p><b>文件名:</b>InformationCase.java</p>
|
||||
* <p><b>用途:</b>枚举在预设测试用例中需要被替换的词语</p>
|
||||
|
@ -513,4 +883,79 @@ public class InformationCase extends Case {
|
|||
return name;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* <p><b>文件名:</b>InputRuleType.java</p>
|
||||
* <p><b>用途:</b>用于枚举控件中可输入字符类型的限制</p>
|
||||
* <p><b>编码时间:</b>2020年3月14日 下午9:14:30</p>
|
||||
* <p><b>修改时间:</b>2020年3月14日 下午9:14:30</p>
|
||||
* @author 彭宇琦
|
||||
* @version Ver1.0
|
||||
* @since JDK 12
|
||||
*/
|
||||
public enum InputRuleType {
|
||||
/**
|
||||
* 中文
|
||||
*/
|
||||
CH("中文"),
|
||||
/**
|
||||
* 英文
|
||||
*/
|
||||
EN("英文"),
|
||||
/**
|
||||
* 数字
|
||||
*/
|
||||
NUM("数字"),
|
||||
/**
|
||||
* 特殊字符
|
||||
*/
|
||||
SPE("特殊字符"),
|
||||
/**
|
||||
* 小写字母
|
||||
*/
|
||||
LOW("小写字母"),
|
||||
/**
|
||||
* 大写字母
|
||||
*/
|
||||
CAP("大写字母");
|
||||
|
||||
/**
|
||||
* 枚举名称
|
||||
*/
|
||||
private String name;
|
||||
/**
|
||||
* 初始化枚举名称
|
||||
* @param name 枚举名称
|
||||
*/
|
||||
private InputRuleType(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
/**
|
||||
* 返回枚举名称
|
||||
* @return 枚举名称
|
||||
*/
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* <p><b>文件名:</b>InputRuleType.java</p>
|
||||
* <p><b>用途:</b>用于枚举号码限制</p>
|
||||
* <p><b>编码时间:</b>2020年3月14日 下午9:14:30</p>
|
||||
* <p><b>修改时间:</b>2020年3月14日 下午9:14:30</p>
|
||||
* @author 彭宇琦
|
||||
* @version Ver1.0
|
||||
* @since JDK 12
|
||||
*/
|
||||
public enum PhoneType {
|
||||
/**
|
||||
* 设置类型为移动电话(手机)
|
||||
*/
|
||||
MOBLE,
|
||||
/**
|
||||
* 设置类型为固定电话(座机)
|
||||
*/
|
||||
FIXED;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,7 +8,7 @@ import org.testng.annotations.Test;
|
|||
|
||||
import pres.auxiliary.work.n.tcase.CaseContentException;
|
||||
import pres.auxiliary.work.n.tcase.InformationCase;
|
||||
import pres.auxiliary.work.n.tcase.InputRuleType;
|
||||
import pres.auxiliary.work.n.tcase.InformationCase.InputRuleType;
|
||||
|
||||
public class InformationCaseTest {
|
||||
InformationCase ic = new InformationCase(new File("ConfigurationFiles/CaseConfigurationFile/CaseTemplet/AddInformation.xml"));
|
||||
|
@ -49,7 +49,7 @@ InformationCase ic = new InformationCase(new File("ConfigurationFiles/CaseConfig
|
|||
}
|
||||
|
||||
/**
|
||||
* 测试{@link InformationCase#addBasicTextboxCase(String, boolean, boolean, boolean, pres.auxiliary.work.n.tcase.InputRuleType...)}方法
|
||||
* 测试{@link InformationCase#addBasicTextboxCase(String, boolean, boolean, boolean, pres.auxiliary.tool.web.InputRuleType...)}方法
|
||||
*/
|
||||
@Test
|
||||
public void addBasicTextboxCaseTest_NotRule() {
|
||||
|
@ -57,11 +57,11 @@ InformationCase ic = new InformationCase(new File("ConfigurationFiles/CaseConfig
|
|||
}
|
||||
|
||||
/**
|
||||
* 测试{@link InformationCase#addBasicTextboxCase(String, boolean, boolean, boolean, pres.auxiliary.work.n.tcase.InputRuleType...)}方法
|
||||
* 测试{@link InformationCase#addBasicTextboxCase(String, boolean, boolean, boolean, pres.auxiliary.tool.web.InputRuleType...)}方法
|
||||
*/
|
||||
@Test
|
||||
public void addBasicTextboxCaseTest_HaveRule() {
|
||||
ic.addBasicTextboxCase("测试控件2", false, false, false, InputRuleType.EN, InputRuleType.NUM);
|
||||
ic.addBasicTextboxCase("测试控件2", false, false, false, InformationCase.InputRuleType.EN, InformationCase.InputRuleType.NUM);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -76,8 +76,8 @@ InformationCase ic = new InformationCase(new File("ConfigurationFiles/CaseConfig
|
|||
* 测试{@link InformationCase#addLengthRuleTextboxCase(String, boolean, boolean, boolean, int, int, InputRuleType...)}方法
|
||||
*/
|
||||
@Test
|
||||
public void aaddLengthRuleTextboxCaseTest_2() {
|
||||
ic.addLengthRuleTextboxCase("测试控件4", false, false, true, 5, 5, InputRuleType.EN, InputRuleType.NUM);
|
||||
public void addLengthRuleTextboxCaseTest_2() {
|
||||
ic.addLengthRuleTextboxCase("测试控件4", false, false, true, 5, 5, InformationCase.InputRuleType.EN, InformationCase.InputRuleType.NUM);
|
||||
}
|
||||
/**
|
||||
* 测试{@link InformationCase#addLengthRuleTextboxCase(String, boolean, boolean, boolean, int, int, InputRuleType...)}方法
|
||||
|
|
Loading…
Reference in New Issue