专注于自动化测试,性能测试.......
WatiN系列之三 Watin如何处理Web页面弹出窗口,对话框,提示框
上一篇 /
下一篇 2010-09-09 18:10:26
/ 个人分类:WatiN
Watin对Web页面弹出窗口,对话框,提示框的处理51Testing软件测试网 |7i@A4`:FRK
/^'K;?-nx K+H7x"MT0处理弹出窗口51Testing软件测试网2V_ml$C |Q.a&Kz v
首先创建一个web页,用于演示弹出窗口。
)bI$~.\1Rx,G2ft:qWt0 51Testing软件测试网3DT%@"ebT)Hgb%r4t
xfh6@Y2l O Z.j0
<inputid="Button1"type="button"value="button"onclick="openwindow()"/>51Testing软件测试网&\} ^:aj`5Z(t <scripttype="text/javascript"> toH1K2f7}N6b0 functionopenwindow()51Testing软件测试网 V-O"Y;S
\.e%Zhu/x {51Testing软件测试网 ]gy(Wy5if window.open("http://localhost/Test/test2.htm"); 0R8KJ.q5K0 } W
w
Q X}0 </script>51Testing软件测试网4RX![
LY!Z^ V5g |
51Testing软件测试网 DH~/|
o(c Ly上述代码,点击“Button1”后,弹出窗口test2.htm.我们要做的是如何处理test2.htm页面51Testing软件测试网 { v\2q*^u^
Watin处理代码如下:51Testing软件测试网d3Q%d,qz8|/j!c
51Testing软件测试网:ul|I W7~'UIEie =newIE("http://localhost/Test/");
LKw:yOI0//点击按钮,打开新窗口test2 qlu[mD6R{0ie.Button(Find.ById("Button1")).Click();51Testing软件测试网Nt$d!`o}!h //查找新窗口test2并赋给新的IE对象 ^[[Lm3a0];a K
E0IEnewie =IE.AttachTo<IE>(Find.ByTitle("test2"));51Testing软件测试网g^JIk //使用新的IE对象就可以继续对新窗口进行操作了 "w:o Z oU6[[5w0newie.TextField(Find.ById("Text1")).TypeText("this is new ie"); CUwAXgb)m0 |
51Testing软件测试网\.@J.O5_ yC 51Testing软件测试网/D8|wVAL|I
eDQ??c0 处理confirm弹出框51Testing软件测试网;^0z,WC0av
首先创建一个web页,用于演示confirm对话框。51Testing软件测试网6f[{9S,j%Bi
51Testing软件测试网VG1q4H)C1I![yO<inputid="myButton1"type="button"value="this is a button" w;{r1L)i0 onclick="confirmMe(); return false;"><br>51Testing软件测试网
FXQV0C.o*a <script> J0S|O*{PF:Fc M*\K4~0 functionconfirmMe() { zZ2Y4w W.SL0 varanswer = confirm ("Are you having fun?")51Testing软件测试网7w2Q"~9{,x#F#J if(answer)51Testing软件测试网2^*C
S1P#G2lt.j-Ik document.getElementById("myButton1").value="Clicked OK";51Testing软件测试网8W;Jtm:{~/] else #hI+zA#W
x1e-X0 document.getElementById("myButton1").value="Clicked Cancel";51Testing软件测试网x3^u(x1Z x6h }51Testing软件测试网W Aq4K+b0bP </script>51Testing软件测试网J-rj9K2kk8X)[ |
;By_7a{%g0
Kl:S$j+lm%_0相应的Watin测试代码如下:
T6D5wa+D2}c01@&|#k.B:^lO_0
51Testing软件测试网w,Iy*P|&t-o
l2WqM IEie =newIE("http://localhost/Test/"); V]$Xh:Sd
A"QR3Ec0//创建一个ConfirmDialogHandler对象 ;^s5@-Wfl
V0ConfirmDialogHandlercdh =newConfirmDialogHandler();51Testing软件测试网?#w'K3U
M#Xl:P //ConfirmDialogHandler对象与ie建立关联51Testing软件测试网GBd2q(L ie.AddDialogHandler(cdh); 7gSA*V_HD(F-MG0//点击按钮,这里需要注意的是:使用的是ClickNoWait()方法
Cc]-A*@X6|w0ie.Button(Find.ById("myButton1")).ClickNoWait();51Testing软件测试网"q(|mLj&Y{!?8Do //等待Confirm对话框出现51Testing软件测试网c;y.^3H:t3d6HY!LP cdh.WaitUntilExists();51Testing软件测试网0usr3q
p //点击Confirm对话框的OK按钮 /RM v)L/Q
AL0cdh.OKButton.Click(); 3vw#H7yw-IPBu0ie.WaitForComplete();51Testing软件测试网bY;E%j Zo0L(c4z //ConfirmDialogHandler对象与ie取消关联51Testing软件测试网xQ&iX| ie.RemoveDialogHandler(cdh);51Testing软件测试网r3K ^4E5E
Dg Console.WriteLine(ie.Button(Find.ById("myButton1")).Value);51Testing软件测试网-n3ns`FkpT Console.ReadLine(); f5d9x])bo&j^WNG%O0 |
8~9_ }/Okp0 51Testing软件测试网Ywa t ekVQ.Mk`
处理Alert弹出框
'D7d0?-H
@y CWP,B(Xz0首先创建一个web页,用于演示Alert对话框。51Testing软件测试网
W1q gt!f9A(q
Zjv'}g2Eu{0
<inputid="myButton2"type="button"value="this is a button2"51Testing软件测试网1m9`
k9jk9z onclick="alertMe(); return false;"><br/>51Testing软件测试网w7wpT P}F <script> [}9}-`U0EC
YA!C0 functionalertMe() {51Testing软件测试网8NX#{o1|B[K
X varanswer = alert("this is a alert dialog");51Testing软件测试网:Qba7Y4^gtTU if(answer) IH
abK&O*\0 document.getElementById("myButton2").value="Clicked OK"; CA}!X2j0 }51Testing软件测试网x(|9t0QOA~`:[ </script>51Testing软件测试网(i^~|{0R DL/I |
|$n6VPA#?
QU0
M9Kxg2~5OM)w^0相应的Watin测试代码如下:51Testing软件测试网#U8tgk)e{m
51Testing软件测试网!L4y0[/T?I/@
a(LIEie =newIE("http://localhost/Test/");51Testing软件测试网9CQ(a H#e ORt'G!t //创建一个AlertDialogHandler对象51Testing软件测试网JF}yFSJT AlertDialogHandleradh =newAlertDialogHandler(); $Z0M7AI
LA_&z-u0//ConfirmDialogHandler对象与ie建立关联51Testing软件测试网S&l
zne
Z%Z? ie.AddDialogHandler(adh);51Testing软件测试网u;E?!s'mLa //点击按钮,这里需要注意的是:使用的是ClickNoWait()方法 \&ksBK[0ie.Button(Find.ById("myButton2")).ClickNoWait();51Testing软件测试网uhg.}j S)l //等待Alert对话框出现51Testing软件测试网7iZ Z'TUL{.l*j:o adh.WaitUntilExists();51Testing软件测试网.s3r.M)|1l
@@
E*` //点击Alert对话框的OK按钮51Testing软件测试网c6T(Z+_-i|@6f adh.OKButton.Click(); /e ]mqvNnuQ$WoL0ie.WaitForComplete();51Testing软件测试网`K%Gzv;H(vuP //AlertDialogHandler对象与ie取消关联 2T E!L `'{_X:SZ0ie.RemoveDialogHandler(adh); eH'bJY!rv?i0Console.WriteLine(ie.Button(Find.ById("myButton2")).Value);51Testing软件测试网@;K
H z-@([
U{ R Console.ReadLine();51Testing软件测试网-mBp
L d{ |
51Testing软件测试网&Wk-\&{-p?%W$}1Q"mJ 51Testing软件测试网C"ePZi@O
处理Fileupload弹出框51Testing软件测试网B r:u]W
L\q5p
首先创建一个web页,用于演示Fileupload对话框。
\!z4O?U&e5\Nb051Testing软件测试网u;N1u"V(fFH+[(]<inputid="File1"type="file"/></p>51Testing软件测试网A~;pF
P1th |
相应的Watin测试代码如下:qAw%|7av
B01ej.G1P6X7[0
IEie =newIE("http://localhost/Test/test2.htm");51Testing软件测试网q%e+tt4Fbdy3l*r //打开文件对话框并加载指定文件 l#F4Iz&M!n
Ma0 ie.FileUpload(Find.ById("File1")).Set(@"D:\Data.txt"); PC+Wd"EuF)a'A7{{"?0 |
51Testing软件测试网}y0bB;YMKh
S 51Testing软件测试网f*XrX%A~:J
收藏
举报
TAG:
WatiN
Watin