【发布时间】:2014-10-22 16:03:31
【问题描述】:
所以我需要突出显示元素(textarea)中的文本,复制突出显示的文本,然后将其粘贴到另一个元素中。
存储第一个元素的值,然后使用 SendKeys 填充另一个元素对我来说不是一个选项。因为那样我会遇到一个 javascript 的其他问题。
这是一个关于我到目前为止已经走了多远的例子:
# Creating FirefoxDriver
$driver = New-Object OpenQA.Selenium.Firefox.FirefoxDriver
# Go to made up URL
$driver.url = "https://www.madeupdomain.com/"
# Find element and store in $MyElement
$MyElement = $driver.FindElementByXPath("//*[@id='MadeUpTextAreaElementId']")
# Attempt to highlight all
$MyElement.SendKeys($driver.keys.CONTROL + 'A')
# Attempt to copy text from text
$MyElement.SendKeys($driver.keys.CONTROL + 'C')
# Find another element to paste text to
$MyOtherElement = $driver.FindElementByXPath("//*[@id='AnotherMadeUpTextAreaElementId']"
# Attempt to paste copied text to another element
$MyOtherElement.SendKeys($driver.keys.CONTROL + 'V')
但这只会在第一个元素中输入“A”和“C”,然后在最后一个元素中输入“V”。
猜测问题出在“$driver.keys.CONTROL”部分。我如何让 Selenium 了解它是我想要执行的按键组合?
【问题讨论】:
标签: powershell selenium