微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript-通过Selenium在AngularJS中自动上传文件

我正在使用Powershell来驱动.NET Selenium,并使用FirefoxDriver来自动化一些东西.其中一部分是文件上传,而网站恰巧(至少部分)是用AngularJS编写的.

现在,我已经找到了如何使用常规输入元素自动执行文件上传.只需通过SendKeys发送文件路径.

但我无法解决这种情况.带有可选的手动文件选择器的文件放置区域的HTML如下:

<div class="overflowHidden video-drop-zone file-drop-zone zone appversionicon rounded"
ng-file-drop="onFileSelect($files);" ng-file-drop-available="dropSupported=true">               
    <div class="simpleDropZoneFileSelect">
        <span class="selectFileText">
            <span class="ng-binding ng-hide" ng-show="dropLabel !== undefined &amp;&amp; dropLabel !== ''"><br></span>
            <a class="ng-binding" href="" ng-show="true">Select file</a>
            <input class="" ng-show="true" ng-file-select="onFileSelect($files)" type="file">
        </span>
    </div>
</div>

我希望我没有做太多简化.当然,整个AngularJS设置还不止于此.但是,也许您足以给我一些关于下一个目标或如何实现此目标的指示.如果没有,请告诉我,我会添加更多信息.

我发现,在进行AngularJS测试时,量角器似乎是可行的方法,但是它会极大地改变我的设置(使用NodeJS服务器等),而我现在所需要的只是上传文件.

谢谢!

桑德罗

解决方法:

不确定整个设置如何.但是在硒中上传文件要容易得多.

Driver.FindElement(By.CssSelector("input[type='files']")).SendKeys("FilePath") 

应该做

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐