`
poller
  • 浏览: 19756 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

利用EUnit实现代码覆盖

阅读更多
实现代码覆盖关键在于erlang中cover,他的实现机制是对module进行再编译,实际上就是加上了自己的統計方法.然后通过cover:analyse(Module)返回統計結果.

一个简单例子:
利用EUnit进行自动化測試,以unit_start为例:
-module(eunit_start).
-include_lib("eunit/include/eunit.hrl").
reverse_test() -> ?assert(1 + 1 =:= 2).
执行:
cover:compile(unit_start),
unit_start:test(),
cover:analyse_to_file(unit_start,"unit_start.html",[html]).
在unit_start.html中就会看到每行代碼执行的次数.
分享到:
评论

相关推荐

    erlang eunit

    为了充分发挥EUnit的优势,文档还可能推荐结合其他工具和技术,如构建工具Rebar、持续集成服务器Jenkins或Travis CI,以及代码覆盖率分析工具。此外,遵循单元测试的最佳实践,如保持测试独立性、使用有意义的测试...

    S60_Platform_How_to_Develop_Unit_Tests_v1_0_en.pdf

    - **改进策略**:分析覆盖率报告,找出覆盖率低的代码部分,并针对性地增加新的测试用例以提高覆盖率。 #### 3. 理解测试性 测试性是指软件系统设计、架构以及实现过程中考虑其易于测试的程度。良好的测试性能够...

    erlang-eunit-19.3.6.4-1.el7.x86_64.rpm

    erlang-eunit-19.3.6.4-1.el7.x86_64.rpm

    EUNIT电力负荷预测竞赛完整数据

    欧洲智能技术网络(EUNITE)竞赛负荷预测样本数据,里面包含了1997年、1998年斯洛伐克东部电力公司某电厂的真实负荷数据,要求预测1999年1月份的负荷数据。另外,给出了1997、1998年每年的节假日数据和每天的天气数据...

    一种傻纸牌游戏的Erlang实现

    在描述中提到的博文链接(已省略)可能提供了更多关于这个游戏实现的细节,包括代码解释和可能的使用场景。由于描述为空,我们将主要基于标题和提供的源代码文件来讨论相关知识点。 1. **Erlang基础知识**: - **...

    eunit99.github.io:伊曼纽尔·乌切纳(Emmanuel Uchenna)投资组合

    用户可以下载并查看源代码,了解乌切纳的编程风格、代码组织方式以及他如何利用JavaScript和其他相关技术来构建现代Web应用。 在深入研究源代码之前,我们可能会遇到以下JavaScript知识点: 1. **DOM操作**:...

    erlang 深度分析

    - **单元测试**: 利用`eunit`框架编写单元测试,确保代码质量。 - **代码规范**: 遵循社区约定的代码风格和命名规则,提高代码可读性。 #### 4. 工具介绍 - **调试工具**: - `debugger`: 提供了断点、单步执行等...

    mixunit:用于混合项目的“eunit”任务

    mixunit v0.9.2 一个用于的eunit任务mixunit是根据许可条款发布的版权所有 2014用法在您的项目中包含mixunit作为依赖项并尝试$ mix eunit 就是这样

    erlang+android

    Erlang在Android上的应用可能需要一些特殊的工具或者库,如Erlang的Android绑定(如ErlyMobile或NIFs)来实现与Java代码的交互。 由于压缩包中只有一个名为"JSONTest"的文件,我们可以推断该文件可能是Erlang用于...

    rebar生成erlang release 并进行热代码升级

    要实现这一点,你需要执行以下步骤: 1. **启动release**:使用`start.sh`脚本来启动release: ```bash _build/default/rel/myapp/bin/myapp start ``` 2. **停止应用程序**:在新版本部署之前,需要先停止当前...

    恐怖

    【标题】:“恐怖”可能指的是在编程领域中遇到的复杂...通过这些信息,我们可以了解到一个使用Erlang和OTP库的项目开发过程,包括使用Rebar3进行构建,利用GitHub Actions自动化流程,以及重视测试和代码质量管理。

    SublimErl:用于Sublime Text 2的Erlang插件,可以完成代码并允许您在编辑器中运行测试

    SublimErl(Erlang测试和代码完成) 概述 SublimErl是文本编辑器的插件。 它使您能够: 受益于代码完成(所有Erlang库+您当前的项目) 允许您自动缩进您的Erlang代码 运行Eunit测试(模块的所有测试/单个测试) ...

    rebar exemplar 例子

    1. **编译Erlang源代码**:Rebar可以自动找到并编译项目的源代码,生成.beam文件。 2. **依赖管理**:通过.rebar配置文件,Rebar可以管理项目依赖的库和其他项目。 3. **测试**:支持运行Eunit和CT(Common Test)...

    stardust:在stardust项目中共享代码

    rebar3 eunit 这将在test / transient_test.erl中运行测试。 两种测试均很可能通过。 但是,如果将Rooms数从10增加到100或1000,则会看到测试用例失败。 此错误是暂时性的,仅在很多次运行中出现。

    《Erlang程序设计》源码

    书中通过源码展示了如何利用Erlang的并发特性设计并实现各种并发算法和数据结构,如队列、银行账户模拟等,这些都是理解并发编程的关键实例。 10. **测试与调试** Erlang提供了如eunit和Common Test这样的测试...

    erlang_server:卡牌游戏《萌兽堂》完整服务器erlang原始码

    9. **测试与调试**:Erlang提供了丰富的单元测试框架如eunit,以及覆盖率工具如cover,可以帮助开发者确保代码质量。此外,Erlang的REPL(Read-Eval-Print Loop)也便于开发者快速测试和调试代码。 通过对`erlang_...

    电气设备信息处理与分析软件V1.0_源代码.docx

    该系统的核心是其源代码,使用了多种Delphi组件和技术来构建,包括但不限于Windows API、数据库连接、用户界面设计以及数据编辑和显示模块。 在系统中,`TfrmInOutView` 是一个关键的表单类,负责显示和处理设备出...

    OTP进程池应用程序_Erlang_Makefile_下载.zip

    OTP进程池就是利用这一点,通过创建一组预定义数量的进程来处理任务,避免频繁地创建和销毁进程带来的开销。这样,当有新任务到来时,可以复用池中的进程,而不是每次都创建新的进程,从而提高了系统的响应速度和...

    erlang程序设计(第二版)随书源码

    10. **测试和调试**:Erlang提供了`eunit`测试框架和`observer`工具来帮助开发者进行单元测试和系统监控。 通过深入研究《Erlang程序设计(第二版)》的随书源码,你可以逐步掌握这些关键知识点,并提升在实际项目...

    erlang open poker 最好的入门程序源码

    9. **测试驱动开发**:Erlang社区非常重视测试,源码可能包含EUnit或PropEr等测试框架的用例,展示如何为Erlang代码编写测试。 通过深入研究这个开源项目,你不仅可以掌握Erlang语言的基本用法,还能理解并发和...

Global site tag (gtag.js) - Google Analytics