转载:https://www.cnblogs.com/hughding/p/evosuite.html

一、EvoSuite简介

EvoSuite是由Sheffield等大学联合开发的一种开源工具,用于自动生成测试用例集,生成的测试用例均符合Junit的标准,可直接在Junit中运行。

通过使用此自动测试工具能够在保证代码覆盖率的前提下极大地提高测试人员的开发效率。但是只能辅助测试,并不能完全取代人工,测试用例的正确与否还需人工判断。

二、EvoSuite Eclipse插件的安装

EvoSuite 插件需要Java 8 的运行环境,并且只支持Eclipse的Lunar和Mars版本,在安装完毕Java 8之后(若系统中有多种Java开发环境,需将Eclipse的默认jre设置成Java 8 版本),需要将jdk1.8/lib/tools.jar  文件复制到  jre8/lib/ 文件夹当中,在此之后Java 8才能保证EvoSuite插件的正常运行。

三、EvoSuite的简单使用

选中需要测试的类,右击鼠标,选择Generate tests with EvoSuite ,则会生成测试用例,测试用例生成在项目中的evosuite-tests文件夹内。生成的测试类为标准的Junit 4 测试类,可以完全按照Junit 4 的操作规范对其测试。

注意:在使用此工具测试Web项目中和Servlet相关的类时,工具加载不到二级目录的jar包,因此应该把 Server Runtime Library和Web App Library中的jar包再重新导入到工程当中。

四、EvoSuite参数设置

点击Windows->Preferences ,查找到EvoSuite即可对其进行设置,设置界面如下

参数说明:

  1. Enable Markers and Quick-fixes:选中此选项会在生成的测试类中产生提示的标记

  2. Time for EvoSuite to improve code coverage(s): 允许EvoSuite生成测试类时改进代码覆盖率的最大时间

  3. Inactive time before other classes will be tested(s):

  4. Show lines EvoSuite couldn’t cover:

  5. Show lines the compiler may have removed:

  6. Automatic test on save:

  7. Organize imports:

  8. Print test comments:选中此项会在测试类中每一个测试方法上加上详细地注释

五、Junit测试报告的生成

选中项目,右击鼠标,选择Export->General->Ant Buildfiles后,设置Name for Ant buildfile和Junit output directory(一般不修改使用默认值),点击Finish,项目中出现build.xml文件,选中build.xml,右击鼠标,选择Run As->Ant Build…后,选中junitreport和要生成测试报告的测试类,选中Sort targets后,点击Run按钮,在junit文件夹中可以看到测试报告。

自动化单元测试工具 EvoSuite 的简单使用 【转载】的更多相关文章

  1. 自动化单元测试工具 EvoSuite 的简单使用

    一.EvoSuite简介 EvoSuite是由Sheffield等大学联合开发的一种开源工具,用于自动生成测试用例集,生成的测试用例均符合Junit的标准,可直接在Junit中运行. 通过使用此自动测 ...

  2. 自动化构建工具—gulp的简单配置

    把之前用到的gulp总结整理下,有时候说不出来的,就写出来吧,做个笔记,以后也可以慢慢补充 cnpm i --save-dev gulp 把nodejs模块写到package.json配置文件中,当保 ...

  3. Openstack单元测试工具简单说明

    一.Openstack 的单元测试工具介绍 1.unittest unittest: 是 Python 的标准库,提供了最基本的单元测试功能,包括 单元测试运行器(简称runner) 和 单元测试框架 ...

  4. ansible自动化工具安装和简单使用

    ansible自动化工具安装和简单使用 1.安装 ansible依赖于Python 2.6或更高的版本.paramiko.PyYAML及Jinja2. 2.1 编译安装 解决依赖关系 # yum -y ...

  5. 安卓自动化robotium工具简单使用(二)

    在学习安卓的这段时间里,刚好有个朋友有一个APP的应用需要开发. 我马上就动手开始做着试试,在完成开发的同时写了相应的自动化测试代码,使用的是robotium. 才接触安卓没几天,写的不太好,如果有好 ...

  6. 前端开发自动化工作流工具,JavaScript自动化构建工具grunt、gulp、webpack介绍

    前端开发自动化工作流工具,JavaScript自动化构建工具grunt.gulp.webpack介绍 前端自动化,这样的一个名词听起来非常的有吸引力,向往力.当今时代,前端工程师需要维护的代码变得及为 ...

  7. 前端自动化构建工具 Gulp 使用

    一个月没写博客了,今天有时间,就写个gulp的入门使用吧.. 简介:gulp是一个前端自动化构建工具,可以实现代码的检查.压缩.合并……等等,gulp是基于Node.js的自动任务运行器 一.安装No ...

  8. TestNg JAVA 自动化单元测试框架Demo

    TestNg TestNg 是java的一个自动化单元测试框架 参考:http://testng.org/doc/index.html 环境准备 既然是java 的自动化单元测试框架,就必须要有jav ...

  9. 前端自动化构建工具-yoman浅谈

    如今随着前端技术的飞速发展,前端项目也变得越来越复杂. 快速的搭建一个集成多种工具和框架的复杂前端项目也越来越成为一种需求. 当然如果你要自己从0开始完全自己diy,绝对可以,只不过需要耗费一些不少的 ...

随机推荐

  1. ThreadPoolExecutor源码详解

    ExecutorService使用线程池中可用的线程执行每个提交的任务,这些线程通常都是使用工厂方法配置 线程池解决两种不同的问题:提高处理大量异步任务的性能(通过减少每个线程的唤醒时间) 提供一种管 ...

  2. HashTable和HashMap的区别详解(转)

    一.HashMap简介 HashMap是基于哈希表实现的,每一个元素是一个key-value对,其内部通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长. HashMap是非线程安全的, ...

  3. itchat 报错 OSError: [WinError -2147221003] 找不到应用程序: 'QR.png'

    OSError: [WinError -2147221003] 找不到应用程序: 'QR.png'   原因: 缺少在windows 下相关处理方法 解决方法:找到你运行环境C:\Python36\L ...

  4. C51汇编典型代码&一些org-mode技巧

    C51汇编典型代码&一些org-mode技巧 文档存放 具体内容可见存放的数据. 下面主要介绍关键代码. ASM 部分 1;; LCD数据发送========================= ...

  5. linux学习第十九天 (Linux就该这么学) 结课了

    今天最后一天课程了,结课了,还有点舍不得那,在些也祝 李老师 事业蒸蒸日上,超来超好, 今天内容是部署了 LNMP 部署动态网站环境(linux  +nginx+mysql+php) 安装文件挺别多, ...

  6. 微信小程序的一些小知识点

    1. <text>hello</text> 只有包含在<text>标签内的文字,在手机上才可以长按选中. 2. 单位px:自适应rpx = 1:1 物理像素除以2得 ...

  7. 【此处有干货~】jmeter+ant+jenkins持续集成配置及过程中问题解决思路

    本人是一枚工作近三年的小测试,大学正好专业为软件测试,在工作中用到最多的是功能测试.接口测试.压力测试.偶尔会涉及到性能测试......(小白,很多观念技术跟大佬差距太大,勿喷) 在接口测试过程当中, ...

  8. angular4.0懒加载

    用angular4.0进行前后端分离已经好几个月了,现在接近了尾声,pc端和移动端.可是却还存在着很多问题,最近这几天一直在研究懒加载问题,因为通过ng build --prod打包后主文件很大,有2 ...

  9. 使用kbmMWConfiguration 让 kbmmw smartservice 更聪明

    以前的文章介绍了 很多 kbmmw smartservice 的使用,尤其是 rest 服务,所有的的配置都是通过 开发时写编码实现的,这样就可能导致,针对不同的应用环境,我们要重新编译代码,当然也可 ...

  10. 使用ServletContextListener关闭Redisson连接

     ServletContextListener 监听器 在 Servlet API 中有一个 ServletContextListener 接口,它能够监听 ServletContext 对象的生命周 ...