在这篇文章中,我们将为您详细介绍如何使用Webkit或Selenium驱动程序填充来自水豚的ckeditor的内容,并且讨论关于-webkit-text-fill-color的相关问题。此外,我们还会
在这篇文章中,我们将为您详细介绍如何使用Webkit或Selenium驱动程序填充来自水豚的ckeditor的内容,并且讨论关于-webkit-text-fill-color的相关问题。此外,我们还会涉及一些关于css3 – 使用-webkit-transform时的Webkit border-radius bleed问题、org.openqa.selenium.WebDriverBackedSelenium的实例源码、selenium 2 web驱动程序另存为对话框、Selenium Chrome浏览器org.openqa.selenium.WebDriverException:等待驱动程序服务器启动时超时的知识,以帮助您更全面地了解这个主题。
本文目录一览:- 如何使用Webkit或Selenium驱动程序填充来自水豚的ckeditor(-webkit-text-fill-color)
- css3 – 使用-webkit-transform时的Webkit border-radius bleed问题
- org.openqa.selenium.WebDriverBackedSelenium的实例源码
- selenium 2 web驱动程序另存为对话框
- Selenium Chrome浏览器org.openqa.selenium.WebDriverException:等待驱动程序服务器启动时超时
如何使用Webkit或Selenium驱动程序填充来自水豚的ckeditor(-webkit-text-fill-color)
假设我使用的是具有JavaScript功能的驱动程序,例如capybara-
webkit或selenium,如何在Capybara中填充CKEditor区域?
答案1
小编典典从我在这里找到的内容启发,我想到了使用javascript在隐藏对象textarea
和CKEditor
对象上设置数据的解决方案。视情况而定,两者似乎都不足够。
def fill_in_ckeditor(locator, opts) content = opts.fetch(:with).to_json # convert to a safe javascript string page.execute_script <<-SCRIPT CKEDITOR.instances[''#{locator}''].setData(#{content}); $(''textarea##{locator}'').text(#{content}); SCRIPTend# Example:fill_in_ckeditor ''email_body'', :with => ''This is my message!''
css3 – 使用-webkit-transform时的Webkit border-radius bleed问题
Link to example
deg = 0; derp = false; function callRotate(){ if(!derp){ setInterval(rotate,50); } } function rotate(){ $("#rotate_me > img").css({"-webkit-transform":"rotate("+ deg +"deg)","-moz-transform":"rotate("+ deg +"deg)"}); deg+=.2; } callRotate();
我决定在div上设置一个等于div高度1/2的边界半径,使图像看起来像一个圆圈. Firefox 4.0.1中的旋转看起来很好,但是当我在Chrome中测试它时,一旦旋转开始,图像就会在边界半径上流血.有谁知道防止图像流血的方法?
解决方法
org.openqa.selenium.WebDriverBackedSelenium的实例源码
@Before public void setUp() throws Exception { MockLogAppender.setupLogging(true,"DEBUG"); // Google Chrome // System.setProperty("webdriver.chrome.driver","/Users/ranger/Downloads/chromedriver"); // WebDriver driver = new ChromeDriver(); // Selenium Remote Server // DesiredCapabilities capability = DesiredCapabilities.firefox(); // WebDriver driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"),capability); // Firefox WebDriver driver = new FirefoxDriver(); String baseUrl = "http://localhost:8980/"; selenium = new WebDriverBackedSelenium(driver,baseUrl); selenium.open("/opennms/login.jsp"); selenium.type("name=j_username","admin"); selenium.type("name=j_password","admin"); selenium.click("name=Login"); waitForPagetoLoad(); }
protected WebDriverBackedSeleniumDriver(WebDriver wd,String url) { super(); setSiteUrl(url); Selenium wdbs = new WebDriverBackedSelenium(wd,url); setSelenium(wdbs); startSelenium(); }
@BeforeClass public static void setup() throws Exception { LOG.debug("Starting Jetty"); server = new Server(0); String url = setupJetty(); LOG.info("Jetty started on {}",url); driver = new FirefoxDriver(); LOG.debug("Starting selenium"); selenium = new WebDriverBackedSelenium(driver,url); driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS); }
/** * @param driver * @param locator */ public void hoverMouSEOn(WebDriver driver,String locator) { WebDriverBackedSelenium selenium = new WebDriverBackedSelenium(driver,driver.getcurrenturl()); selenium.mouSEOver(locator); }
public OwnerPage(WebDriverBackedSelenium selenium) { super("Owners",selenium,HomePage.PAGE_TITLE); if (!selenium.getHtmlSource().contains("Owner information")) { String msg = format("Owner information page has not been loaded from [%s]",selenium.getLocation()); throw new NotCorrectPageException(msg); } }
public AddOwnerPage(WebDriverBackedSelenium selenium) { super("Add Owner",HomePage.PAGE_TITLE); if (!selenium.getHtmlSource().contains(" New Owner")) { String msg = format("Add Owner page has not been loaded from [%s]",selenium.getLocation()); throw new NotCorrectPageException(msg); } }
public FindOwnersPage(WebDriverBackedSelenium selenium) { super("Find Owners",HomePage.PAGE_TITLE); if (!selenium.getHtmlSource().contains("Find Owners")) { String msg = format("Find Owners page has not been loaded from [%s]",selenium.getLocation()); throw new NotCorrectPageException(msg); } }
public HomePage(WebDriverBackedSelenium selenium) { super("Home",PAGE_TITLE); if (!selenium.getHtmlSource().contains("Welcome")) { String msg = format("Home page has not been loaded from [%s]",selenium.getLocation()); throw new NotCorrectPageException(msg); } }
public BasePage(String internalPageName,WebDriverBackedSelenium selenium,String expectedPageText) { this.internalPageName = internalPageName; this.selenium = selenium; String html = getHtml(); if (!html.contains(expectedPageText)) { String msg = format("Page body (%s) does not contain expected text (%s),current page is: %s",html,expectedPageText,selenium.getLocation()); throw new NotCorrectPageException(msg); } }
public browserEmulator() { setupbrowserCoreType(GlobalSettings.browserCoreType); browser = new WebDriverBackedSelenium(browserCore,"https://github.com/"); javaScriptExecutor = (JavascriptExecutor) browserCore; logger.info("Started browserEmulator"); }
/** * 获取 WebDriverBackedSelenium 实例 * @return */ public WebDriverBackedSelenium getbrowser() { return browser; }
selenium 2 web驱动程序另存为对话框
我读了2009年的一些帖子,webDriver和selenium无法访问另存为对话框但是想知道现在是否有一个解决方法.
我只需要单击保存单选按钮,这样就不会尝试打开它,然后单击保存按钮
解决方法
谢谢,Vamyip
Selenium Chrome浏览器org.openqa.selenium.WebDriverException:等待驱动程序服务器启动时超时
public class Dem {
public static void main(String[] args) throws InterruptedException {
WebDriver driver;
String url = "https://www.google.com”;
System.setProperty(“webdriver.chrome.driver”,”C:\Users\Jim\Downloads\chromedriver_win32\chromedriver.exe”);
driver = new ChromeDriver();
driver.get(url);
driver.close();
}
}
Selenium Webdriver和Chrome驱动程序是最新版本
Selenium Webdriver:3.14.0
chromedriver:2.42
java:1.8.0_181
这是运行代码后的错误。Google chrome根本不会启动
。
严重:org.apache.commons.exec.ExecuteException:进程退出,
错误:-1073741792(退出值:-1073741792)线程“ main”中的异常
org.openqa.selenium.WebDriverException:等待驱动程序服务器
启动时超时。内部版本信息:版本:‘3.14.0’,版本:’aacccce0’,时间:
‘2018-08-02T20:13:22.693Z’驱动程序信息:driver.version:位于
org.openqa.selenium.remote.service的ChromeDriver 。 DriverService.waitUntilAvailable(DriverService.java:193)
在
org.openqa.selenium.remote.service.DriverService.start(DriverService.java:179)
在
org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java: 79)
在
org.openqa.selenium.remote.RemoteWebDriver()
上的
org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:212)
上的org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:548) .java:130)(位于
org.openqa.selenium.chrome.ChromeDriver。(ChromeDriver.java:181),位于
org.openqa.selenium.chrome.ChromeDriver。(ChromeDriver.java:168)
。 ChromeDriver。(ChromeDriver.java:123)位于
news.Dem.main(Dem.java:17),由以下原因引起:
org.openqa.selenium.net .UrlChecker $ TimeoutException:等待
[ http:// localhost:32986 /状态]将于20002 ms后在org.openqa.selenium.net上可用
.UrlChecker.waitUntilAvailable(UrlChecker.java:100)
在
org.openqa.selenium.remote.service.DriverService.waitUntilAvailable(DriverService.java:188)
...... 9点多
答案1
小编典典调试步骤
可能是以下两个问题之一。
1.由于某些原因,Chrome驱动程序无法启动:
手动在终端中运行Chrome驱动程序
C:\ Users \ Jim>
C:\Users\Jim\Downloads\chromedriver_win32\chromedriver.exe
现在,我们必须获得以下消息,指示服务器已成功启动。
如果未收到上述消息并且服务器未启动,请检查您所得到的错误并进行相应的响应?可能下载了损坏的二进制文件,然后再次下载。
2.无法使用主机名访问chrome驱动程序localhost
如果您能够按照上述步骤成功启动chromedriver,现在尝试使用相应的端口访问以下网址。http://localhost:{port}/status
例如,在上述消息中,服务器从端口9515启动。访问
浏览器中的网址,http://localhost:9515/status
您应该获得以上消息,指示服务器可以通过主机名访问
localhost
如果您无法访问,请
使用管理员权限在编辑器中打开C:\ Windows \ System32 \ drivers \ etc \ hosts 并检查localhostDNS是否已映射到
127.0.0.1
关于如何使用Webkit或Selenium驱动程序填充来自水豚的ckeditor和-webkit-text-fill-color的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于css3 – 使用-webkit-transform时的Webkit border-radius bleed问题、org.openqa.selenium.WebDriverBackedSelenium的实例源码、selenium 2 web驱动程序另存为对话框、Selenium Chrome浏览器org.openqa.selenium.WebDriverException:等待驱动程序服务器启动时超时的相关信息,请在本站寻找。
本文标签: