- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我很难理解有关 selenium Grid/RC 的一些概念。我需要的是为测试提供特定的环境(ie6-on-xp、ie7-on-xp 等)。对于我一直在阅读的内容,grid_configuration.yml
中的浏览器行没有提及我的 MSIE
或 Firefox
版本我正在运行。所以我想不出我可以用哪种形式告诉 Grid/RC 我想要一些特定的浏览器和运行它们的路径(RC 如何知道要运行哪个 exe?)
其次,我想运行这些浏览器的便携版本。我只看到在测试中指定,而不是在 RC 的命令行中运行它们。根据测试,这是做到这一点的方法吗?
最佳答案
我会分解你需要的信息来回答你的问题
What I need is to provide specific environments (ie6-on-xp, ie7-on-xp, etc) to the tests.
既然你不能在同一台机器上有多个 IE 实例,我知道有一些应用程序允许你这样做,但根据我的经验,它们导致的问题多于解决它们的问题。理想情况下,您希望不同的机器运行测试。通过这样做,您还为您的开发人员设置了一个 selenium 农场,因为他们可以针对特定实例进行测试。因此,将网格设置为基础设施是一个很好的步骤。
For what I've been reading, the browser line in grid_configuration.yml do not make any reference of what version of MSIE or Firefox I'm running. So I can't get my head around in which form I can tell Grid/RC that I want some specific browsers and the path to run them (how RC knows which exe to run?)
YAML 只是让您知道网格可以处理什么。启动网格时,您需要确保传入类似的配置。将 Se:GRID 想象成 Se:RC,只是你不关心 RC 服务器在哪里,因为你与一个中心位置对话,它会为你解决其余的问题。
如果您需要它针对特定项目运行测试,那么您需要在测试设置中处理它。有一个普遍的误解,认为所有测试在每个浏览器中都将以相同的方式运行。如果您在测试中从不依赖 XPath 或 CSS 选择器,就会发生这种情况,因为浏览器处理此问题的方式总是略有不同,而细微的差异会导致不稳定的测试,这应该始终避免。
指定用于测试的浏览器的一种方法是拥有一个中央配置文件。在 C# 中,这将使用具有每个浏览器集合的 app.config 并执行
配置
<Firefox>
<addKey browserVersion='3.5.6' OS='WindowsXP'>
</Firefox>
中央配置类查看 1 个元素
public class BoothElement : ConfigurationElement
{
[ConfigurationProperty("browserVersion", DefaultValue = "", IsKey = true, IsRequired = true)]
public string browserVersion
{
get
{
return ((string)(base["browserVersion"]));
}
set
{
base["browserVersion"] = value;
}
}
测试
selenium = new DefaultSelenium(HubPort, HubPort, browserVersion, SUTServer);
selenium.Open("/test.htm");
//Rest of the test
在 python 中,您可以在包含在所有测试中的模块中创建一个数组
include.py
hubServer = 'hub'
hubPort = 5555
sut = 'http://serverUnderTest'
firefox = [hubServer,hubPort,"\*chrome",sut]
iexplore = [hubServer,hubPort,"\*iehta",sut]
测试.py
sel = selenium(firefox)
sel.open("/test.html")
#rest of the test
在使用 Selenium Grid 时,请尝试将其更多地视为测试基础架构帮助框架,希望它能为您提供更多帮助。
Second, I'd like to run portable versions of those browsers. I've only seen that specified in the tests, and not in the RC's command line to run them. That is the way to do it, per test?
我从来没有尝试让 Selenium 在移动浏览器上工作,我认为它不会很好地工作,但是对于目前处于 alpha 阶段的 Selenium 2,Android 支持测试应用程序。
根据评论编辑
- name: "Firefox on OS X"
browser: "*firefox"
- name: "Firefox on Linux"
browser: "*firefox"
- name: "IE on Windows"
browser: "*iehta"
- name: "Safari on OS X"
browser: "*safari"
假设我们有上述设置,根据 YAML 文件我们有许多不同的 *firefox 实例。所以要在我们的测试中调用那些不同的,我们的浏览器设置命令看起来像
selenium.Start(hubHost, hubPort, "Linux 上的 Firefox", "http://serverUnderTest");
或 selenium.Start(hubHost, hubPort, "Firefox on OS X", "http://serverUnderTest");
集线器将为您将其转换为 *firefox。我更喜欢为我的环境使用非常精细的名称,而不是通常的 *firefox,这样如果出现故障,它更容易发现它在哪里以及在哪个特定浏览器上。
关于selenium - 在 Selenium Grid 中为 IE6(和多个浏览器)设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1944209/
我是网页设计新手。现在我遇到了我目前工作的 2 个网站的问题。我的模板只支持 Firefox 浏览器,不支持其他主流浏览器,如 IE、chrome、Opera、safari。 我试过一些 If IE
在我的 HTML 上,使用了下面的元标记来解决一些字体问题。我只想知道: 这两个元标记的含义相同吗?还是每一个都不一样? [以逗号分隔] [以分号分隔] 请解释一下。 最佳答案 Microsoft
这句话究竟是什么意思? 部分示例使用 ,分隔 IE 的版本,而有些使用 ; ;哪个是正确的? 订单IE=9; IE=8; IE=7; IE=EDGE有一些重要性,我想知道。 编辑:我正在使用 最佳答
这句话究竟是什么意思? 一些示例使用 ,分隔 IE 的版本,而有些使用 ; ;哪个是正确的? 订单IE=9; IE=8; IE=7; IE=EDGE有一定的重要性,我想知道。 编辑:我正在使用 最佳
在 IE 8 中,我们可以带出开发者工具。然后在顶部,有一个浏览器模式: IE 7 IE 8 IE 8 Compatibility View 所以如果 IE 7是强制页面显示为好像浏览器是 IE 7,
我认为不需要任何描述。我只需要我的 IE 11 单选按钮与 IE 8 中的一样,即颜色为 3-d 蓝色。在 IE 11 中,默认单选按钮是二维的,颜色为黑色。目前还没有解决这个问题。 最佳答案 检查这
我必须编写一个显示密码对话框的小程序。问题是对话框设置为始终在顶部,但是当用户单击 IE 窗口时,对话框仍然隐藏在 IE 窗口后面。并且由于对话框是模态的并且保持全部 IE 线程 IE Pane 不会
如何制作适用于所有 IE 浏览器的样式表。不只是 ie.css 中的 IE 8 本站主题的ie.css文件中只包含IE8样式。 最佳答案 他们这样做的原因是因为他们可能不支持 Internet Exp
使用有什么区别吗 ... 或者 ... ? 最佳答案 如果一种罕见的、神话般的浏览器被称为 ,就会有所不同。 Internet Explorer 6.66 被发现。 关于internet-explor
我试图在 IE7+8 中使用字体图标并遇到了一个问题,这个问题可以通过仅 IE7 的样式表轻松解决。长话短说,现在 IE7 和 IE9 都以某种方式运行我的仅 IE7 样式表(IE8 运行得很好)。我
我实现了上传的图片显示在网站上。为了 图片未正确上传意味着我将错误图片替换为 那?当我加载网站时,我遇到了 错误图像不存在的问题 定义,并且灯箱在 chrome 和 firefox 中加载 但它没有在
我有一个特殊的问题。我正在尝试“现代化”和为旧 IE 制作的旧应用程序,以便在 IE 11 中工作。但不知何故,CSS 类没有应用于 DOM 元素。 CSS 非常简单: .header { h
对于 IE 7 和 IE 8,IE 上 URL 的 2k 长度限制是否仍然存在? (后 IE 6 时代) 最佳答案 http://support.microsoft.com/kb/208427 似乎它
我们正在完善这个网站:dev.underglassframing.com 除了主要内容 div (#main) 后面的背景在 IE 7、8 和 9 中的内容之前停止外,在每个浏览器中一切都很好。我在末
我在 IE 11 中搜索过与 border-radius 相关的类似问题,但是 only one found on the Microsoft IE Developer site描述了自从“升级”到
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit th
这个问题在这里已经有了答案: (CSS?) Eliminating browser's 'selected' lines around a hyperlinked image? (5 个答案) 关闭
我知道有 1000 个问题,但我就是无法让它发挥作用。我只是想针对所有版本的 IE(包括 IE11)并给 html 一个特定的类,对于所有其他浏览器(firefox、opera、chrome),我希望
我有一个嵌入了 Internet Explorer 的程序。 在某些情况下,我需要调整嵌入式 IE 的缩放级别。我正在使用带有 OLECMDID_OPTICAL_ZOOM 的 ExecWB 命令来执行
我正在开发一个网络应用程序。我的应用程序在 chrome 和 firefox 上运行良好,但由于某种原因在 IE 中出现了一些错误。即使出现几个错误,应用程序仍然可以顺利运行,没有明显的问题。 我想对
我是一名优秀的程序员,十分优秀!