Tag: selenium ide

使用Selenium更改eBay页面内容/ DOM的最简单方法

Selenium显然不是为了允许你修改浏览器页面的DOM而设计的,但我偶尔需要动态插入HTML元素。 在这个例子中:我使用Firefox和Selenium IDE来记录eBay上的拍卖列表,但我注意到它无法应对大量的JScripted拍卖内容控件并且没有为这些元素记录任何内容。 如果我为ebay网站关闭JavaScript,第一个拍卖条目页面的更简单版本就会被破坏(它缺少确认PayPal作为付款选项所需的隐藏输入元素)。 所以,我目前的选择是…… a)弄清楚如何与Selenium的花哨的JScript HTML编辑器控件进行交互,或者b)将新元素插入到DOM中。 有没有人有任何建议,最好是在C#,因为我在Windows控制台应用程序下自动执行此操作? 如果有人拥有代码,也可以接受Selenium User-Extensions。

为什么我的测试在一起运行时失败,但是单独传递?

当我在Visual Studio中编写测试时,我通过在Nunit中保存,构建然后运行测试来检查它是否正常工作(右键单击测试然后运行)。 测试工作正常…所以我继续…… 现在我已经编写了另一个测试,它可以像我上面保存和测试一样工作。 但是,当它们一起运行时,它们不起作用。 以下是我的两个测试,这些测试在作为个体运行时有效但在一起运行时失败: using System; using NUnit.Framework; using OpenQA.Selenium.Support.UI; using OpenQA.Selenium; namespace Fixtures.Users.Page1 { [TestFixture] public class AdminNavigateToPage1 : SeleniumTestBase { [Test] public void AdminNavigateToPage1() { NavigateTo().LogonAsCustomerAdministrator(); NavigateTo(); var headerelement = Driver.FindElement(By.ClassName(“header”)); Assert.That(headerelement.Text, Is.EqualTo(“Page Title”)); Assert.That(Driver.Url, Is.EqualTo(“http://localhost/Page Title”)); } [Test] public void AdminNavigateToPage1ViaMenu() { NavigateTo().LogonAsCustomerAdministrator(); Driver.FindElement(By.Id(“menuitem1”)).Click(); Driver.FindElement(By.Id(“submenuitem4”)).Click(); var headerelement = Driver.FindElement(By.ClassName(“header”)); Assert.That(headerelement.Text, […]

如何从webbrowser控件获取onclick中的实际JavaScript值?

我正在寻找一种方法来获取onclick中定义的JavaScript代码。 我正在使用.NET 2.0 C#Visual Studio 2005。 例: click here 我的目标是获取字符串“window.location.href =’someURL’” 。 场景: 用户点击Web页面元素,例如上面显示的标签,在WebBrowser控件内部。 然后将单击的标记tmlElement object到H tmlElement object 。 在WebBrowser控件中我然后调用HtmlElement object’s getAttribute(“onclick”) ,它只给我“ System .__ ComObject”。 我已经搜索了如何处理它然后发现它可以被铸造然后获得价值。 if (tag.GetAttribute(“onclick”).Equals(“System.__ComObject”)) { Console.WriteLine(“dom elem >>>>>>>>>>> ” + tag.DomElement.ToString()); mshtml.HTMLSpanElementClass span = (mshtml.HTMLSpanElementClass)tag.DomElement; Console.WriteLine(“js value ===>” + span.onclick); } 输出: dom elem >>>>>>>>>>> mshtml.HTMLSpanElementClass js value ===> System.__ComObject […]