1:'一下的代码记录的是我对于一个查询操作的自动化的思路。。。。。遗憾的是预期的结果可能需要手动输入到datatable中,以后逐步完善,将所有的预期值都自动输入到excel中。
'登陆系统
2:
3: RunAction "login [loginsystem]", oneIteration
4: '**************************************************************************************************************
5: '功能:产品名称查询结果 162测试机器
6: '参数:产品名称
7: '用例:
8: '
9: ''**************************************************************************************************************
10: Browser("【 】测试浏览器").Page("【 】测试浏览器").Sync
11: wait 5
12: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("menuFrame").Link("产品管理").Click
13: 'Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebEdit("productName").Set
14: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame1").WebEdit("productName").Set DataTable("producename", dtLocalSheet)
15: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebEdit("travelDaySpan").Set DataTable("days", dtLocalSheet)
16: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebEdit("pproductId").Set DataTable("id", dtLocalSheet)
17: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebEdit("hinpDeptCity").Set DataTable("fromto", dtLocalSheet)
18: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebEdit("hinpArriCity").Set DataTable("goto", dtLocalSheet)
19: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebEdit("departmentName").Set DataTable("apartname", dtLocalSheet)
20: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebList("valid").Select DataTable("status", dtLocalSheet)
21:
22: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebList("recommandLevel").Select DataTable("stars", dtLocalSheet)
23: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebEdit("createUserName").Set DataTable("creater", dtLocalSheet)
24: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebCheckBox("WebCheckBox").Set DataTable("type_all", dtLocalSheet)
25: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebCheckBox("lineType").Set DataTable("type_play", dtLocalSheet)
26: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebCheckBox("lineType_2").Set DataTable("type_shopping", dtLocalSheet)
27: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebCheckBox("lineType_3").Set DataTable("type_travel", dtLocalSheet)
28: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebCheckBox("lineType_4").Set DataTable("type_best", dtLocalSheet)
29: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebCheckBox("lineType_5").Set DataTable("type_honey", dtLocalSheet)
30: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebCheckBox("lineType_6").Set DataTable("type_fallow", dtLocalSheet)
31: 'Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("menuFrame").Link("产品管理").Click
32: Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebButton("查 询").Click
33:
34: expectid=datatable("expectid",dtlocalsheet)
35: expectname=datatable("expectname",dtlocalsheet)
36: expectdepartment=datatable("expectdepartment",dtlocalsheet)
37: expectstars=datatable("expectstars",dtlocalsheet)
38: expecttype=datatable("expecttype",dtlocalsheet)
39: expecttraveltype=datatable("expecttraveltype",dtlocalsheet)
40: expectline=datatable("expectline",dtlocalsheet)
41: expectarea=datatable("expectarea",dtlocalsheet)
42: expectdays=datatable("expectdays",dtlocalsheet)
43: expectstatus=datatable("expectstatus",dtlocalsheet)
44: expectcreater=datatable("expectcreater",dtlocalsheet)
45: expectlogtime=datatable("expectlogtime",dtlocalsheet)
46:
47: Function testResult(testcasesuite)
48: '检查预期的查询测试产品的ID号是否正确
49: Dim id,proname,partment,stars,protype,totalerror
50: totalerror=0
51: id=(expectid=trim(actualid))
52: ' print "id is:"&id
53: If id Then
54: reporter.ReportEvent micPass,"按照"&testcasesuite&"进行查询","预期的产品ID:"&expectid&",实际的产品ID为:"&actualid&",测试执行结果相同,测试用例通过"
55: else
56: reporter.ReportEvent micFail,"按照"&testcasesuite&"进行查询","预期的产品ID:"&expectid&",实际的产品ID为:"&actualid&",测试执行结果不相同,测试用例失败"
57: totalerror=totalerror+1
58: End If
59: '检查预期的查询测试产品名称是否正确
60: proname=(expectname=trim(actualname))
61: ' print "name is:"&proname
62: If proname Then
63: reporter.ReportEvent micPass,"按照"&testcasesuite&"进行查询","预期的产品名称:"&expectname&",实际的产品名称为:"&actualname&",测试执行结果相同,测试用例通过"
64: else
65: reporter.ReportEvent micFail,"按照"&testcasesuite&"进行查询","预期的产品名称:"&expectname&",实际的产品名称为:"&actualname&",测试执行结果不相同,测试用例失败"
66: totalerror=totalerror+1
67: End If
68: '检查预期的查询的测试部门是否正确
69: expectd=trim(expectdepartment)
70: actuald=trim(actualdepartment)
71: partment=(expectd=actuald)
72: ' print "partment is:"&partment
73: If partment Then
74: reporter.ReportEvent micPass,"按照"&testcasesuite&"进行查询","预期的产品部门:"&expectdepartment&",实际的产品部门为:"&actualdepartment&",测试执行结果相同,测试用例通过"
75: else
76: reporter.ReportEvent micFail,"按照"&testcasesuite&"进行查询","预期的产品部门:"&expectdepartment&",实际的产品部门为:"&actualdepartment&",测试执行结果不相同,测试用例失败"
77: totalerror=totalerror+1
78: End If
79: '检查预期的查询的推荐星级是否正确
80: stars=(expectstars=trim(actualstars) )
81: ' print "stars:"&stars
82: If stars Then
83: reporter.ReportEvent micPass,"按照"&testcasesuite&"进行查询","预期的产品推荐星级:"&expectstars&",实际的产品推荐星级为:"&actualstars&",测试执行结果相同,测试用例通过"
84: else
85: reporter.ReportEvent micFail,"按照"&testcasesuite&"进行查询","预期的产品推荐星级:"&expectstars&",实际的产品推荐星级为:"&actualstars&",测试执行结果不相同,测试用例失败"
86: totalerror=totalerror+1
87: End If
88: '检查预期的查询的产品类型是否正确
89: protype=(expecttype=trim(actualtype))
90: ' print "type is"&protype
91: If protype Then
92: reporter.ReportEvent micPass,"按照"&testcasesuite&"进行查询","预期的产品产品类型:"&expecttype&",实际的产品类型为:"&actualtype&",测试执行结果相同,测试用例通过"
93: else
94: reporter.ReportEvent micFail,"按照"&testcasesuite&"进行查询","预期的产品类型:"&expecttype&",实际的产品类型为:"&actualtype&",测试执行结果不相同,测试用例失败"
95: totalerror=totalerror+1
96: End If
97: '检查预期的查询的旅游类型是否正确
98: traveltype=(expecttraveltype=trim(actualtraveltype))
99: ' print "traveltype is:"&traveltype
100: If traveltype Then
101: reporter.ReportEvent micPass,"按照"&testcasesuite&"进行查询","预期的旅游类型:"&expecttraveltype&",实际的旅游类型为:"&actualtraveltype&",测试执行结果相同,测试用例通过"
102: else
103: reporter.ReportEvent micFail,"按照"&testcasesuite&"进行查询","预期的旅游类型:"&expecttraveltype&",实际的旅游类型为:"&actualtraveltype&",测试执行结果不相同,测试用例失败"
104: totalerror=totalerror+1
105: End If
106: '检查预期的查询的起始终止路线是否正确
107: expectl=trim(expectline)
108: actuall=trim(actualline)
109: travelline=(expectl=actuall)
110: If travelline Then
111: reporter.ReportEvent micPass,"按照"&testcasesuite&"进行查询","预期的起始终止路线:"&expectline&",实际的起始终止路线为:"&actualline&",测试执行结果相同,测试用例通过"
112: else
113: reporter.ReportEvent micFail,"按照"&testcasesuite&"进行查询","预期的起始终止路线:"&expectline&",实际的起始终止路线为:"&actualline&",测试执行结果不相同,测试用例失败"
114: totalerror=totalerror+1
115: End If
116: '检查预期的查询的销售地区是否正确
117: If expectarea=trim(actualarea) Then
118: reporter.ReportEvent micPass,"按照"&testcasesuite&"进行查询","预期的销售地区为:"&expectarea&",实际的销售地区为:"&actualarea&",测试执行结果相同,测试用例通过"
119: else
120: reporter.ReportEvent micFail,"按照"&testcasesuite&"进行查询","预期的销售地区为:"&expectarea&",实际的销售地区为:"&actualarea&",测试执行结果不相同,测试用例失败"
121: totalerror=totalerror+1
122: End If
123: '检查预期的查询的行程天数是否正确
124: If trim(expectdays)=trim(actualdays) Then
125: reporter.ReportEvent micPass,"按照"&testcasesuite&"进行查询","预期的行程天数为:"&expectdays&",实际的行程天数为:"&actualdays&",测试执行结果相同,测试用例通过"
126: else
127: reporter.ReportEvent micFail,"按照"&testcasesuite&"进行查询","预期的行程天数为:"&expectdays&",实际的行程天数为:"&actualdays&",测试执行结果不相同,测试用例失败"
128: totalerror=totalerror+1
129: End If
130: '检查预期的查询的产品状态是否正确
131: If expectstatus=trim(actualstatus) Then
132: reporter.ReportEvent micPass,"按照"&testcasesuite&"进行查询","预期的产品状态为:"&expectstatus&",实际的产品状态为:"&actualstatus&",测试执行结果相同,测试用例通过"
133: else
134: reporter.ReportEvent micFail,"按照"&testcasesuite&"进行查询","预期的产品状态为:"&expectstatus&",实际的产品状态为:"&actualstatus&",测试执行结果不相同,测试用例失败"
135: totalerror=totalerror+1
136: End If
137: '检查预期的查询的产品创建人是否正确
138: If expectcreater=trim(actualcreater) Then
139: reporter.ReportEvent micPass,"按照"&testcasesuite&"进行查询","预期的产品创建人为:"&expectcreater&",实际的产品创建人为:"&actualcreater&",测试执行结果相同,测试用例通过"
140: else
141: reporter.ReportEvent micFail,"按照"&testcasesuite&"进行查询","预期的产品创建人为:"&expectcreater&",实际的产品创建人为:"&actualcreater&",测试执行结果不相同,测试用例失败"
142: totalerror=totalerror+1
143: End If
144: If totalerror=0 Then
145: ' msgbox ("恭喜你,测试执行完成,全部通过!")
146: elseif totalerror>10 then
147: msgbox ("你确定你的测试用例的数据正确,还是你是在除了72上的其他环境上进行的测试?如果是,请重新设计测试用例")
148: else
149: msgbox("测试用例执行中有些没有通过,请查看测试报告,提交测试缺陷!")
150: End If
151: End Function
152:
153: If datatable.GetCurrentRow=0 Then
154: actualid=Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebTable("产品 编号").GetCellData(2,1)
155: actualname=Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebTable("产品 编号").GetCellData(2,2)
156: actualdepartment=Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebTable("产品 编号").GetCellData(2,3)
157: actualstars=Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebTable("产品 编号").GetCellData(2,4)
158: actualtype=Browser("【 】上航假
159: 期 - 后台管理系统").Page("【 】测试浏览器").Frame("mainFrame0").WebTable("产品 编号").GetCellData(2,5)
160: actualtraveltype=Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebTable("产品 编号").GetCellData(2,6)
161: actualline=Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebTable("产品 编号").GetCellData(2,7)
162: actualarea=Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebTable("产品 编号").GetCellData(2,8)
163: actualdays=Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebTable("产品 编号").GetCellData(2,9)
164: actualstatus=Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebTable("产品 编号").GetCellData(2,10)
165: actualcreater=Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebTable("产品 编号").GetCellData(2,11)
166: actuallogtime=Browser("【 】测试浏览器").Page("【 】测试浏览器").Frame("mainFrame0").WebTable("产品 编号").GetCellData(2,12)
167: reporter.ReportEvent micDone,"执行按照产品名进行查询产品","预期测试结果和实际结果参考如下:"
168: Call testResult("产品名称:")
169:
170: print "---------------------------"
171: print actualid
172: print actualname
173: print actualdepartment
174: print actualstars
175: print actualtype
176: print actualtraveltype
177: print actualline
178: print actualarea
179: print actualdays
180: print actualstatus
181: print actualcreater
182: print actuallogtime
183: End If
184:
185:
186: If datatable.GetCurrentRow=1 Then
187: msgbox datatable("producename",dtlocalsheet)
188: End If
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207:
208: