更多课程 选择中心

软件测试培训
达内IT学院

400-996-5531

单元测试常用的30款测试工具及框架(上)

  • 发布:webmaster
  • 来源:51testing
  • 时间:2019-03-15 17:31

软件测试日常的工作中为了方便自己,提高工作效率,我们经常去寻找相关的工具和框架, 自己造轮子耗时费力,不如看看开源的测试工作,我们今天为大家介绍的是单元测试常用的30款测试工具及框架上。

1. NoSQL的单元测试工具 NoSQLUnit

授权协议:Apache

开发语言:Java

操作系统:跨平台

NoSQLUnit 详细介绍

NoSQLUnit 是一个 JUnit 的扩展,用来为那些使用了 NoSQL 后端的应用提供单元测试和集成测试的工具。

使用示例:

@UsingDataSet(locations="my_data_set.json", loadStrategy=LoadStrategyEnum.REFRESH)

@ShouldMatchDataSet(location=

"my_expected_data_set.json")

lordofthejars / nosql-unit

2. JavaScript单元测试工具 JsTestDriver

授权协议:Apache

开发语言:JavaScript

操作系统:跨平台

sTestDriver 详细介绍

JsTestDriver是一个JavaScript单元测试工具,易于与持续构建系统相集成并能够在多个浏览器上运行测试轻松实现TDD风格的开发。当在项目中配置好js-test-driver以后,如同junit测试java文件一般,js-test-driver可以直接通过直接运行js文件,来对js文件单元测试。

3. C++单元测试工具 QTRunner

授权协议:GPLv3

开发语言:C/C++

操作系统:跨平台

QTRunner 详细介绍

QTRunner 是一个用来运行多个单元测试并在一个GUI图形界面的应用程序中显示测试结果的软件。支持 QTestLib 和 GoogleTest 单元测试的执行,QTRunner 是基于 Qt 库开发的跨平台测试工具。

4. JavaScript 单元测试工具 Venus

授权协议:Apache 2.0

开发语言:JavaScript

操作系统:跨平台

开发厂商:Linkedin

Venus 详细介绍

Venus 是一个 JavaScript (JS)的测试工具,可以简化运行单元测试。当你在 JS 开发一个基于浏览器的项目时,你想创建单元测试并频繁地运行它们。通常,你会用一些库比如 Mocha 或 Jasmine,写一个单元测试,这些库可以让你定义测试用例,并提供 API 来编写判断。

我们通过创建一个工具,可以让你更轻松地与现有的库一起工作。一下是 Venus 的主要好处:

在你的测试使用 Simple annotations, 来指定你要使用的测试库,你要测试的文件,其它文件依赖,以及测试工具模板

通过使用 PhantomJS 运行命令行,直接快速运行你的基于浏览器的测试

在多浏览器的命令行中同时运行你的测试(本地运行或远程)

集成持续集成工具(Selenium Grid + Travis CI)

linkedin / venus.js

5.Flex 单元测试工具 Fluint

授权协议:MIT

开发语言:ActionScript

操作系统:跨平台

Fluint 详细介绍

Fluint是一个 Flex 单元测试工具,对于Flex单元和集成测试,“Fluint”非常简洁。它是为编写Flex2或Flex3应用的开发者提供的测试框架,无论这些应用是通过Adobe Flash Player在浏览器中部署的,还是通过Adobe AIR在桌面上部署的。

Fluint最初是作为Digital Primates的内部工具开发的,用以测试一些非常大的项目。随着Flex社区对其需求的不断增长,Digital Primates决定把其发布为一个开源项目。尽管针对Flex有其他的单元测试解决方案,按照Labriala的说法,Fluint仍填补了重要空白。

6. JavaScript 单元测试工具 Buster.JS

授权协议:BSD

开发语言:JavaScript 查看源码

操作系统:跨平台

Buster.JS 详细介绍

Buster.JS 是 JavaScript 的单元测试工具包,**

**浏览器测试工具包;**Buster.js 可以自动的在浏览器上测试,像 JsTestDriver ;QUnit 风格 静态 HTML 页面测试 ; 在一些不知名的浏览器上测试,像 PhantomJS 和 jsdom ;

Node.js 测试工具包;

灵活; Buster.js 里面几乎含有所有的公共 API 。你可自己书写* 测试报告* 来自定义 buster 的输出(buster 里面已经有 xUnit XML, traditional dots, specification, tap, TeamCity ),也可以编写扩展其他测试框架(buster 里面已经有 buster-jstestdriver ),添加你自己的测试语法(xUnit 和 BDD);

更多相关信息请看 the overview 。

7. 存储过程单元测试工具 SQLUnit

授权协议:未知

开发语言:Java

操作系统:跨平台

SQLUnit 详细介绍

SQLUnit是一个用于对存储过程进行单元测试的工具,其实也可以用于做针对数据库数据、性能的测试等,延续了xUnit家族的一贯特性和风格,只不过它的测试是以xml的方式来编写,但原则仍然和xUnit家族其他产品一样,强调的是输出和预期的比较,SQLUnit的文档比较的少,由于官方站上并没有提供类似其他开源工具的quick start guide,就写了这篇quick start guide以便大家快速的使用sqlunit,至于SQLUnit的高级用法还是得去多看看#官方站上的文档。

8.C++单元测试工具 ECUT

授权协议:EPL

开发语言:C/C++

操作系统:跨平台

ECUT 详细介绍

ECUT (Eclipse C++ Unit Testing) 项目将 CppUnit 和 Eclipse CDT 开发工具集成起来,提供更好的无缝的单元测试支持,类似 JUnit 和 JDT 一样。该项目也允许跟其他的 C++单元测试框架进行集成。

9.Qt单元测试工具 QTestlib

授权协议:未知

开发语言:C/C++

操作系统:跨平台

QTestlib 详细介绍

Trolltech公司提供的QTestlib框架,是一种针对基于QT编写的程序或库的单元测试工具。QTestLib提供了单元测试框架的基本功能,并提供了针对GUI测试的扩展功能。设计QTestLib的目标是为了简化QT程序或库的单元测试工作。

10.单元测试维护工具 Unitils

授权协议:Apache

开发语言:Java

操作系统:跨平台

Unitils 详细介绍

Unitils这个Java开源类包的目的是让单元测试变得更加容易和可维护。Unitils构建在DBUnit与EasyMock项目之上并与 JUnit和TestNG相结合。支持数据库测试,支持利用mock对象进行测试并提供与Spring和Hibernate相集成。Unitils设计成 以一种高度可配置和松散偶合的方式来添加这些服务到单元测试中。

在进行数据库测试时能够:

自动维护和强制关闭单元测试数据库(支持Oracle,Hsqldb,MySql,DB2),

简化单元测试数据库连接的设置,

简化利用DBUnit测试数据的插入,

简化Hibernate session管理,

自动测试与数据库相映射的Hibernate映射对象。

在利用Mock对象进行测试时能够:

简化EasyMock mock对象创建,

简化mock对象注入,利用反射等式匹配EasyMock参数。

在与Spring集成时易于把spring管理的bean注入到单元测试中,支持在单元测试中使用一个用Spring配置的Hibernate SessionFactory。

11. Java单元测试框架 JUnit

授权协议:CPL

开发语言:Java

操作系统:跨平台

JUnit 详细介绍

JUnit是一个Java语言的单元测试框架。它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中为最成功的一个。 JUnit有它自己的JUnit扩展生态圈。

多数Java的开发环境都已经集成了JUnit作为单元测试的工具。

在线Javadoc:#/apidocs/apidoc?api=junit-4.10

12.C单元测试工具 greatest

授权协议:未知

开发语言:C/C++

操作系统:跨平台

greatest 详细介绍

greatest 是一个 C 语言的单元测试系统,只需要一个文件支持。示例代码:

$ cat simple.c

#include "greatest.h"

TEST x_should_equal_1() {

int x = 1;

ASSERT_EQ(1, x); /* default message */

ASSERT_EQm("yikes, x doesn't equal 1", 1, x); /* custom message */

PASS();

}

SUITE(the_suite) {

RUN_TEST(x_should_equal_1);

}

/* Add definitions that need to be in the test runner's main file. */

GREATEST_MAIN_DEFS();

int main(int argc, char **argv) {

GREATEST_MAIN_BEGIN(); /* command-line arguments, initialization. */

RUN_SUITE(the_suite);

GREATEST_MAIN_END(); /* display results */

}

$ make simple && ./simple

cc -g -Wall -Werror -pedantic simple.c -o simple

* Suite the_suite:

.

1 tests - 1 pass, 0 fail, 0 skipped (5 ticks, 0.000 sec)

Total: 1 tests (47 ticks, 0.000 sec)

Pass: 1, fail: 0, skip: 0.

silentbicycle / greatest

13.单元测试检测工具 PIT

单元测试工具

授权协议:Apache

开发语言:Java

操作系统:跨平台

PIT 详细介绍

PIT 是一个快速的 Java 系统突变检测系统,可用来测试单元测试的有效性,测试单元测试的覆盖。

14.数据库单元测试工具 DbUnit

授权协议:未知

开发语言:Java

操作系统:跨平台

DbUnit 详细介绍

DbUnit 使您可以容易地执行 JDBC 查询并获取它们的值。使用 DbUnit JDBC 包装器而不是纯粹的 JDBC 有几个理由:

可以用 SQL 查询创建一个 Dataset ,并使用 DbUnit 的 assertion(断言)方法(在后面描述)。

可以用 SQL 查询创建一个 Dataset ,并将它保存为一个 FlatXmlDataSet 。可以在以后将它重新装载到数据库中。

可以容易地从任何行中获取列的内容,无需进行迭代。

15.Java GUI单元测试工具 Abbot

授权协议:未知

开发语言:Java

操作系统:跨平台

Abbot 详细介绍

Abbot 是一个简单的用来对 Java 的图形界面应用程序进行功能和单元测试的框架。主要功能包括模拟用户行为、检查组件状态,测试过程会被记录下来并可以进行回放。

感谢您的阅读,以上就是为大家分享的软件测试单元测试中常用的30种开源测试工具及框架上,还有更多请点击查看单元测试中常用的30种开源测试工具及框架下

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:达内软件测试培训2019年3月免费训练营课程安排!
下一篇:单元测试常用的30款测试工具及框架(下)

你知道吗?做软件测试不一定需要精通代码!

软件测试人员不需要懂代码,这是一个伪命题!

如何设计登录测试的设计用例?

软件测试必备的数据库知识有哪些?(终)

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

陕西省

湖南省

贵州省

云南省

广西省

海南省