我一直在做一些與Selenium和Fiverr.com的工作,我遇到了一些問題,我希望得到一些幫助。我試圖創造一個新的演出,我已經設法做了一切,但有幾件事仍然困擾着我。有一件事是圖片上傳。夫婦與硒的事情
•您有你點擊一個文件輸入類型()帶來了一個Windows對話框,我的計劃迄今使用SendKeys.SendWait
工作過,除了在那裏你推「開放」的Windows對話框的部分按鈕提交圖片。我試過使用SendKeys.SendWait(「{ENTER}」)來點擊它,但到目前爲止還沒有爲我工作,所以對此有什麼想法?除非P/Invoke有處理Windows對話框的東西,否則我想不出有什麼其他辦法可以做到這一點?
•我也試圖在'說明'框中輸入文字,但還沒有做到這一點。我試圖通過類名來得到它,但它告訴我,因爲它隱藏在它無法訪問類的,也試圖像這樣做到這一點通過JavaScript(IJavaScriptExecutor
):
IWebElement detailFrame = firefoxDriver.FindElement(By.XPath("/html/body"));
var executor = firefoxDriver as IJavaScriptExecutor;
executor.ExecuteScript("arguments[0].innerHTML = 'hiiiiiiii'", detailFrame);
很奇怪因爲他們用肢體文本字段像這樣:
<body marginwidth="0" marginheight="0" spellcheck="true" class="wysihtml5-editor" contenteditable="true" style="color: rgb(119, 119, 119); cursor: auto; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; letter-spacing: normal; text-align: start; text-decoration: none; text-indent: 0px; text-rendering: auto; word-break: normal; word-wrap: break-word; word-spacing: 0px; overflow: auto; background-color: rgb(255, 255, 255);">TEXT HERE<span id="_wysihtml5-undo" class="_wysihtml5-temp"></span></body>
我認爲他們使用的是兩種不同的「人體的」,雖然,但XPath的只是表明它的/ HTML/BODY。我將如何設置這樣的文本?
謝謝你們的幫助,在過去的兩個小時裏一直在這裏。
告訴我無法找到元素(_wysihtml5-undo),我試過了XPath以及ID,有什麼想法嗎? – Frank 2014-12-11 17:33:01
你能告訴我你正在嘗試的步驟嗎? – Saifur 2014-12-11 17:51:52
firefoxDriver.FindElementById(「_ wysihtml5-undo」)。SendKeys(「Hi」); 或 firefoxDriver.FindElementByXPath(「// * [@ id ='_ wysihtml5-undo']」)。SendKeys(「Hi」); 兩者都拋出相同的錯誤,它找不到。 – Frank 2014-12-11 23:47:38