开源
测试工具
Selenium
或者说开源测试社区
OpenQA.org
已是今非昔比,
两
年
多
前,我曾经介绍过
Selenium
IDE
、
Selenium Core
和
Selenium RC
(
强大的
Web开源
测试工具
—Selenium
)。如今,这个家族又增添了不少新成员,例如:
-
-
-
-
-
-
-
-
基于
Watir
的
Web
测试工具——
WET
-
构建
Java
单元测试的一套工具——
JTC
(
Java Testing Commons
)
1
.分布式测试环境——
Selenium Grid
(网格)
Selenium Grid
能充分地利用测试环境中的机器,允许同时并行地、在不同的环境上运行多个测试任务,极大地加快Web
应用的功能测试.
基于优秀的Web
测试工具Selenium
,Selenium Grid
可以并行地运行多个Selenium
Remote Control
(RC
,远程控制)的实例,而且可以在一台机器上就能
控制它们,而不要在乎实际的物理环境。这样,Selenium Grid
可以大大地节省测试执行的
时间。
对于Selenium RC
,又提供了很好的灵活性,测试脚本可以由Ruby,
Java, Python, C#, PHP, ...
等不同的语言来开发。
最后,告诉大
家,Selenium Grid
容易安装,也容易使用.
2.
强大的功能测试框架和平台-
CubicTest
CubicTest
成为领先的Web
功能测试的综合开发环境,虽然现在有很多不同的测试框架,但
是CubicTest
具有协调各种相关的Web
元素之间的相互作用而独树一帜。不必作为一个程序员去理
解CubicTest
,
唯一要关注的就是要测试Web
页面上所能看到的界面元素,而不是HTML
源代码。
CubicTest
强力支持 “不重复自己(Don't
Repeat Yourself
,DRY
)”和“测试优先”
两大原则。DRY
原则通过子测试(subtests
,
被其它测试调用的测试)实现通用化(Commons
)、
参数化(parameterization
)
和抽象等特性,从而使自动化功能测试变得容易。通过图形化建模和HTML
输出等特性,CubicTest
实现了测试优先的策略。
CubicTest
借助像ele
nium
和Watir
的优秀测试框架来驱动测试,
而且是图形化方法实现,从而使人们非常容易理解和使用框架。直到最近发布的1.8.6
版本,CubicTest
才充分发挥了Selenium
的所
有潜力,并在不久的将来,也能很好支持Watir
。
CubicTest 1.8.6
的新特性:
-
支持多帧(multi-frames
)结构
-
国际化(I18N
)支持,多国语言的站点
-
自定义步骤,具有调试的能力
-
捕获各种HTML
和图像的问题
3.
单元测试
Java
库
-
Floyd
Floyd
是为了更容易实施Web
应用的自动化测
试而建立的Java
库.
它提供了对像Mozilla
和IE
这样标准的浏览器的完全控制能力,
以实现Java
单元测试。通过调用Floyd's Java API
,可以实现浏览器的交互和页面装载,这样可以模拟用户对真实的web
浏览器的交互作用。
对于Java web
应用,可以采用内嵌式Web
服务器来
提高测试能力,如访问服务器的session
,获取向服务器发出的请求和服务器的响应。Floyd
不是对JUnit
类的扩张,所以它可以应用
于各种单元测试之中,不局限于JUnit
或 TestNG
4.
测试管理工具——
Bromine
Bromine
是集成了Selenium Core
和 Selenium Remote Control
、完全成熟的QA
工
具,从而使从事Web
应用测试的测试经理和测试工程师的工作变得轻松和有效。借助Bromine
,我们可以非常容易(点点鼠标)跟踪和管理测试项目、需求、测试计划、测试用例和缺陷,也可以管
理Selenium RC
的节点以及像手工测试那样一步一步地执行测试脚本。例如测试人员可以执行
所录制的、绑定Selenium IDE
格式的脚本,并监控缺陷的提交和将缺陷分派给相应的开发人
员。
完全成熟的QA
工具
创建项目
将需求和项目绑定起来
将测试和需求绑定起来
容易组织和执行测试
浏览和分析测试结果
提交缺陷报告
|
|
|
5.
最后以一个不是笑话的笑话结束
你们知道上面几个测试工具(
Selenium
、
Bromine
等)的名字为什么
取得那么难认?
Selenium
是硒的英文名称,硒是天然
的解毒剂,对有害重金属离子的天然解毒作用,可以解除汞(
Mercury
)毒,实验表明
汞暴露水平越高,硒
对汞毒性的拮抗作用越明显,所以说
硒是汞的克星
,
Selenium
是
Mercury
的克星,你知道
Mercury
的测试工具吗?做
过自动化测试的人都知道
:)
溴(
Bromine
)是非金属单质里面唯一的液体,也是一种很好的微量元素,矿泉水中就有一项
质量指标,即溴化物
≥1.0
,溴能调节中枢神经系统活动,具有安定情绪和镇静作用。在医院里普遍使用的镇静剂,有一类就是用溴的化
合物制成。
有了
Selenium
工具,就不需要花费几十万甚至几百万钞票去买
Mercury
的产品;有了
Bromine
调节,我们就不会
着急,可以轻松自如地管理软件测试,享受工作和生活。
参
考:
YouTube
- GTAC
2007
:
Jason
Huggins &
Jen Bevan - Extending
Selenium
Selenium
framework -
Google Test Automation Conference
|
Google
Groups
-
-
-
-
分享到:
相关推荐
import org.openqa.selenium.chrome.ChromeDriver; public class SimpleSeleniumTest { @Before public void setUp() { System.setProperty("webdriver.chrome.driver", "path/to/chromedriver"); WebDriver ...
selenium+chromedriver120.0.6046.0-win64+python测试代码 项目介绍: 该案例是利用selenium使用xls中的数据对表单自动化填充及提交 项目中用到了chromedriver版本为120.0.6046.0系统win10 64位,需要安装谷歌浏览器...
selenium c#开发库 selenium-dotnet-3.14.0 using Selenium;//引用Selenium using OpenQA.Selenium; using OpenQA.Selenium.Chrome;//支持Chrome
import org.openqa.selenium.chrome.ChromeDriver; public class SeleniumExample { public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "path/to/your/chromedriver"); ...
Selenium 是一个强大的开源自动化测试框架,用于网页应用程序。它支持多种编程语言,如 Python、Java、C#、Ruby 等,使测试工程师能够编写可跨多个浏览器和平台运行的自动化测试脚本。Selenium 的核心组件包括 ...
Selenium 是一个强大的开源自动化测试框架,用于模拟用户在网页上的各种交互操作。3.141.59 版本是 Selenium 的一个重要版本,它提供了稳定性和性能的改进,适用于 Java 平台的浏览器自动化测试。这个版本的 ...
selenium.remote.server 此代码基于 Selenium 项目中 Selenium Grid 的重构版本,可在原始代码已被拆分,并进行了一些小改动以允许模块化已制造Selenium Grid 项目的 org.openqa.selenium.remote.server 实用程序类
import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.htmlunit.HtmlUnitDriver; import static junit.framework...
Selenium是一个开源的工具集,广泛应用于软件测试领域,特别是对于Web应用的功能性和兼容性测试。 Selenium WebDriver是Selenium的核心部分,它提供了一种标准的API,可以与不同的浏览器进行交互。通过WebDriver,...
Selenium 是一个强大的开源自动化测试框架,主要用于Web应用程序的测试。它支持多种编程语言,包括Java,这使得它成为Java开发人员进行Web自动化测试的首选工具。本安装包" Selenium-Java-3.141.59"是Selenium为Java...
Selenium 是一个强大的 Web 自动...总之,Selenium 是一个功能强大的 Web 自动化测试工具,通过安装 "selenium-3.0.0b2.tar.gz" 并按照正确的步骤进行,可以将其集成到 Python 开发环境中,为 Web 应用的测试提供便利。
压缩包中的文件“Selenium.WebDriver.3.141.0”很可能包含了Selenium WebDriver的.NET Framework绑定,这是一组库,使.NET开发者可以直接在他们的代码中调用WebDriver API。通常,这个包会包括WebDriver的DLL文件、...
它由 ThoughtWorks 公司开发,并且随着时间的发展已经成为一个开源项目,得到了广泛的社区支持。Selenium 的主要优势在于其能够模拟真实用户的浏览器行为,这使得它在功能测试、回归测试以及界面测试方面表现卓越。 ...
- 引入必要的命名空间:`OpenQA.Selenium`、`OpenQA.Selenium.PhantomJS`和`System`。 - 创建一个名为`Program`的类,在其中定义`Main`方法。 - 在`Main`方法中,初始化`IWebDriver`实例,使用`PhantomJSDriver`...
Selenium 是现在使用最为广泛的一款开源自动化测试工具,也是非商业支持的稳定性易用性最好的一款自动化测试工具。与 QTP 相比,Selenium 不仅在软件投资上有比较大的优势,在针对 web 测试的稳定性上也有绝对的优势...
Selenium服务器 此代码基于 Selenium 项目中 Selenium Grid 的重构版本,可在原始代码已被拆分,并进行了一些小改动以允许模块化已制造 Selenium Grid 项目的 org.openqa.selenium.server 实用程序类
在Web自动化测试领域,Selenium是一个广泛使用的开源工具,它允许开发者编写代码来控制浏览器,进行网页应用的功能测试。而Selenium与浏览器交互的关键就在于浏览器驱动程序,其中针对Internet Explorer(IE)浏览器...
import org.openqa.selenium.firefox.FirefoxDriver; public class FirstExample { public static void main(String[] args) { WebDriver driver = new FirefoxDriver(); driver.get("http://www.google.com.hk"...