51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1159|回复: 1
打印 上一主题 下一主题

Coded UI中执行Javascript

[复制链接]
  • TA的每日心情
    奋斗
    2021-8-16 14:04
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    跳转到指定楼层
    1#
    发表于 2018-4-20 15:12:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    Coded UI中用C#对WebBrowser执行JavaScript,之前一直纠结这个问题各种找方法,最后查看WatiN中的Ru
    nScript()方法的实现,终于有所收获。

    有例有真相:Technet Library的登录实现:

    1. 复制代码
    2.        [TestMethod]
    3.         public void VerifySignIn()
    4.         {
    5.             string url = "https://login.live-int.com/login.srf?wa=wsignin1.0&rpsnv=46&ct=1364435925&rver=6.0.5276.0&wp=MCLBI&wlcxt=TechNet%24TechNet%24TechNet&wreply=http%3a%2f%2ftechnettest.redmond.corp.microsoft.com%2fen-US%2flibrary%2faa991542%3flc%3d1033&lc=1033&id=266001&mkt=en-US";
    6.             string name = "abc";
    7.             string psw = "123";

    8.             //js代码:f1是表单,i0116是UserName文本框的id,i0118是Password的文本框id,idSIButton9是Sign in按钮的id。
    9.             string scriptCode = "f1.i0116.value=" + "'" + name + "'; f1.i0118.value=" + "'" + psw + "'; f1.idSIButton9.click();";
    10.             
    11.             BrowserWindow browser = BrowserWindow.Launch(new Uri(url));
    12.             HtmlInputButton _btnSubmit = new HtmlInputButton(browser);
    13.             _btnSubmit.SearchProperties[HtmlInputButton.PropertyNames.Id] = "idSIButton9";

    14.             //将HtmlControl转换成HtmlElement,然后获取到IHTMLDocument2对象,进而获取到IHTMLWindow2对象,然后调用其execScript()方法
    15.             IHTMLElement btnSubmit = _btnSubmit.NativeElement as IHTMLElement;
    16.             var doc = btnSubmit.document as IHTMLDocument2;
    17.             IHTMLWindow2 window = doc.parentWindow;
    18.             window.execScript(scriptCode, "javascript");
    19.             browser.WaitForControlReady();
    20.         }
    复制代码


    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-17 22:23 , Processed in 0.065929 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表