我想设置一个Selenium服务器,以便客户端可以在本地记录测试,记录的测试可以在使用Firefox + Chrome的Ubuntu服务器上重播和测试.
不幸的是,Selenium网站太混乱了,提到了很多不同的项目(Selenium 1,Selenium 2,Selenium RC,Selenium Grid),我不知道从哪里开始.
如何在Ubuntu盒子上设置Selenium Server?
我第一次使用Selenium并且被选项所淹没.我在Firefox中使用IDE.
当我的页面加载时,它随后通过JSONP请求获取值,使用该请求填充选择中的选项.
在继续操作之前,如何让Selenium等待select中的某个选项出现?
使用Selenium IDE,如何测试元素的内部文本是否包含特定字符串?例如:
<p id="fred">abcde</p>
'id=fred' contains "bcd" = true)
Run Code Online (Sandbox Code Playgroud) 我的Web应用程序在浏览器中加载pdf.我已经弄清楚如何使用以下方法检查pdf是否已正确加载:
verifyAttribute xpath = // embed/@ src {PDF的URL到这里}
能够使用Selenium检查pdf的内容真的很好 - 例如验证是否存在某些文本.有没有办法做到这一点?
我有一个复选框,我试图在Selenium IDE中单击 - 但仅当它尚未激活时.
我正在使用Selenium IDE来创建我的测试,而htmlsuite来运行它们 - 任何人都知道如何在这些中使用"if"?
如果我理解正确,我可以使用此插件创建一个构建步骤:https://wiki.jenkins-ci.org/display/JENKINS/Conditional+BuildStep+Plugin
首先,这个插件是否支持Post-Build步骤?第二是有没有一种方法可以在没有插件的情况下使Post-Build步骤有条件?
我的场景是我通过一个通用的Jenkins Job设置支持WebDriver和Selenium IDE测试.如果他们检查过任何一种类型的测试,它就会运行它们.然后,我希望它有条件地查看是否显示任何结果文件,如果是,则执行发布结果Post-Build步骤,否则跳过该步骤.
目前,如果没有显示结果,它只是将构建标记为失败,因为没有找到测试结果.
任何建议都会有帮助!
我正在寻找一种方法来获取onclick中定义的JavaScript代码.我正在使用.NET 2.0 C#Visual Studio 2005.
例:
<span id="foo" onclick+"window.location.href='someURL'>click here</span>
Run Code Online (Sandbox Code Playgroud)
我的目标是获取字符串"window.location.href ='someURL'".
场景:
用户点击Web页面元素,例如上面显示的标记,在WebBrowser控件内部.然后点击标签被吹罚至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);
}
Run Code Online (Sandbox Code Playgroud)
输出:
dom elem >>>>>>>>>>> mshtml.HTMLSpanElementClass
js value ===> System.__ComObject
Run Code Online (Sandbox Code Playgroud)
如图所示,span.onclick仍然给我System .__ ComObject,我做错了什么?
在为什么的HtmlElement的的getAttribute()方法返回"mshtml.HTMLInputElementClass",而不是属性的值? 这家伙说它在他的情况下工作,我跟着它,但我的有点不工作......
UPDATE
研究,研究.....
我可以在我的C#项目中添加引用VisualBasic.dll然后调用该方法来找出这个系统是谁.__ ComObject确实是.
Console.WriteLine(Microsoft.VisualBasic.Information.TypeName(span.onclick));
Run Code Online (Sandbox Code Playgroud)
输出:
JScriptTypeInfo
Run Code Online (Sandbox Code Playgroud)
看起来这是一个JScript类型......我该如何访问这个对象?
更多详情
以上描述基于我目前的项目.该项目旨在创建像Selenium IDE这样的东西.它使用WebBrowser控件.
Selenium IDE创建了3种不同的东西来记录Web文档中的元素.
1. actionType
2. xpath
3. …
Run Code Online (Sandbox Code Playgroud) 我想检查按钮是否被禁用selenium IDE
但是我不能.我试过下面的代码,但它不起作用.有没有其他方法可以找到按钮是否被禁用...? <tr><td>assertElementPresent</td><td>
//button[contains(text(), 'Save')]</td><td>/td></tr>
<ul>
<li class="active">
<a href="#">
<i class="fa fa-home"></i><br>
<span class="title">Home</span>
</a>
</li>
<li>
<a href="#">
<i class="fa fa-rss-square"></i><br>
<span class="title">Posts</span>
</a>
</li>
<li>
<a href="#">
<i class="fa fa-calendar"></i><br>
<span class="title">Events</span>
</a>
</li>
<li>
<a href="#">
<i class="fa fa-bar-chart-o"></i><br>
<span class="title">My Activity</span>
</a>
</li>
<li>
<a href="#">
<i class="fa fa-edit"></i><br>
<span class="title">Assessments</span>
</a>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
我想找到相应的span元素.我想使用css选择器检查span元素的顺序.因此,当我使用selenium IDE时,我将像下面一样验证它(使用第n个子概念).
verifyText | css = .title:nth(0)| 首页
验证文本| css = .title:nth(1)| 帖子
验证文本| css = .title:nth(2)| 事件
verifyText | css = .title:nth(3)| 我的活动
验证文本| css …
到现在为止我只是喜欢:
val radioButton4: WebElement = driver.findElement(By.id("FieldsubCode2"))
radioButton4.click
Run Code Online (Sandbox Code Playgroud)
但现在我想按值找到元素,这个值:
所以我想去:
val radioButton4: WebElement = driver.findElement(By.value("3.2"))
radioButton4.click
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
selenium selenium-ide selenium-chromedriver selenium-webdriver