San*_*neQ 2 javascript java selenium reactjs
尝试使用 selenium webDriver 将图像上传到 dropzone。已经实现了 dropzonejsdotcom 站点,但是如果我尝试使用 ReactJS dropzone 脚本(http://reactdropzone.azurewebsites.net/example/),我会收到一条消息:“未知错误:Dropzone 未定义”。
\n\nJavascriptExecutor executor;\n\npublic ReactDrpzn() {\n Configuration.browser = "chrome";\n this.executor = (JavascriptExecutor) WebDriverRunner.getWebDriver();\n}\nprivate By dropzone = By.cssSelector(".filepicker.dropzone.dz-clickable");\n\n@Test\npublic void drzon() throws IOException, InterruptedException {\n open("http://reactdropzone.azurewebsites.net/example");\n $(dropzone).hover();\n String script = "var myZone, blob, base64Image; myZone = Dropzone.forElement(\'.filepicker.dropzone.dz-clickable\');" +\n "base64Image = \'iVBORw0KGgoAAAANSUhEUgAAAO0AAABQCAYAAAD1GfIkAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsIAAA7CARUoSoAAAAEGSURBVHhe7dPBCcAwAAMxp/vv3ObRJQ4kMJ7gzrb3Doh4/gciRAsxooUY0UKMaCFGtBAjWogRLcSIFmJECzGihRjRQoxoIUa0ECNaiBEtxIgWYkQLMaKFGNFCjGghRrQQI1qIES3EiBZiRAsxooUY0UKMaCFGtBAjWogRLcSIFmJECzGihRjRQoxoIUa0ECNaiBEtxIgWYkQLMaKFGNFCjGghRrQQI1qIES3EiBZiRAsxooUY0UKMaCFGtBAjWogRLcSIFmJECzGihRjRQoxoIUa0ECNaiBEtxIgWYkQLMaKFGNFCjGghRrQQI1qIES3EiBZiRAsxooUY0UKMaCFGtBAjWkjZPk/PAZ8fwt/rAAAAAElFTkSuQmCC\';" +\n "function base64toBlob(r,e,n){e=e||\\"\\",n=n||512;for(var t=atob(r),a=[],o=0;o<t.length;o+=n){for(var l=t.slice(o,o+n),h=new Array(l.length),b=0;b<l.length;b++)h[b]=l.charCodeAt(b);var v=new Uint8Array(h);a.push(v)}var c=new Blob(a,{type:e});return c}" +\n "blob = base64toBlob(base64Image, \'image / png\');" +\n "blob.name = \'file.png\';" +\n "myZone.addFile(blob);";\n\n executor.executeScript(script);\n Thread.sleep(3000);//\xd1\x81\xd0\xbc\xd0\xbe\xd1\x82\xd1\x80\xd0\xb8\xd0\xbc \xd1\x80\xd0\xb5\xd0\xb7\xd1\x83\xd0\xbb\xd1\x8c\xd1\x82\xd0\xb0\xd1\x82\n}\nRun Code Online (Sandbox Code Playgroud)\n\n你可以从这里导入maven https://github.com/SaneQ/Drpzn
\n小智 5
基本上分两步:
JavaScript:
const {Builder, By, Key, until} = require('selenium-webdriver');
let driver = new Builder()
.forBrowser('chrome')
.build();
driver.get('http://reactdropzone.azurewebsites.net/example/');
driver.findElement(By.xpath('.//input[@type="file"]')).sendKeys('full_path_to_your_file.png');
Run Code Online (Sandbox Code Playgroud)
Python:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get('http://reactdropzone.azurewebsites.net/example/')
input_field = driver.find_element_by_xpath('.//input[@type="file"]')
input_field.send_keys('full_path_to_your_file.png')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2225 次 |
| 最近记录: |