文章 2017-09-12 来自:开发者社区

微型项目实践(2):用测试驱动代码生成

上一篇文章中,我们分析了系统的两个实体类,并且给出了对应的实体XML。今天我们来看看如何根据这个XML进行代码生成。 1: <?xml version="1.0" encoding="utf-8" ?> 2: <Entities xmlns="http://it.ouc.edu.cn/EntityDescription/V2"> 3: <...

文章 2017-08-02 来自:开发者社区

《 自动化测试最佳实践:来自全球的经典自动化测试案例解析》一一1.4 利用验收测试驱动开发,使用FitNesse测试GUI

1.4 利用验收测试驱动开发,使用FitNesse测试GUI现在已经是我们自动化之旅的第8个月了,程序员已经建立了一个自动化单元测试的实用库。对于应用程序的核心区域我们已经进行了冒烟测试,覆盖微量代码的大约100个JUnit测试已经完成了。但是中间层还什么都没有,TDD此时变成了一个空壳。现在我们开始对自动化测试金字塔的中间层进行填充。1.4.1 内存内测试我们的金融理财产品有许多复杂的算法,这....

文章 2017-08-01 来自:开发者社区

《测试驱动的嵌入式C语言开发》——导读

目 录 第1章 测试驱动开发1.1 为什么我们需要TDD1.2 什么是测试驱动开发1.3 TDD的机理1.4 TDD的微循环1.5 TDD的好处1.6 对于嵌入式开发的益处第一部分 开  始第2章 测试驱动开发的工具和约定2.1 什么是自动化单元测试框架2.2 Unity:一个全部用C实现的自动化测试框架2.3 CppUTest:一个用C++实现的自动化单元测试框架2.4 单元测试也会崩溃2......

文章 2017-08-01 来自:开发者社区

《测试驱动的嵌入式C语言开发》——3.10节学以致用

学以致用 重新编写一个你自己的LedDriver,以便在第4章中使用。你可以在code/SandBox中找到开始所需的文件。其中有一个README.txt文件可以参考。 为一个内容为整型的先入先出的环状缓冲CircularBuffer写一个测试列表。 开始测试驱动开发CircularBuffer。选择检查初始状态并使用其接口的那些测试来做TDD。选择那些可以只用硬编码返回值就能通过的测试。你会.....

文章 2017-08-01 来自:开发者社区

《测试驱动的嵌入式C语言开发》——3.9节我们到哪里了

3.9 我们到哪里了在本章里,我们开始了LedDriver的开发。LedDriver并不是什么复杂的例子,但对于表现TDD的机制和过程来讲,最好从简单的例子入手。我们用一个测试列表来帮助驱动设计和满足驱动程序的用户要求。本章开始的几个测试产出了一个骨架的测试夹具和驱动程序代码。我们已经准备好给骨架上添加更多的肉了。大概有些读者会很关心代码不完整的结果,只是完成了部分的实现。别发愁。不管怎样你也不....

文章 2017-08-01 来自:开发者社区

《测试驱动的嵌入式C语言开发》——3.8节测试要做到FIRST

3.8 测试要做到FIRST在Agile in a Flash[OL11]一书中,Tim Ottinger和Jeff Langr给我们讲述了5个单元测试的关键属性。高效的测试需要做到FIRST。F Fast(快速的): 测试要快速,快到程序员可以在每个微小的改动后都运行它们而且不会打断工作流。I Isolated(独立的): 测试用例要是独立的。一个测试不会为另一个测试创建环境。测试...

文章 2017-08-01 来自:开发者社区

《测试驱动的嵌入式C语言开发》——3.7节测试驱动开发者的状态机

3.7 测试驱动开发者的状态机可以把TDD想象成在一个状态机(state machine)里工作,就如图3-2所示。在这一过程的每一步中,你只需关注解决一个具体的问题。首先,你要决定下一个增量的行为是什么并用测试表达你所期望的产出。然后你要满足编译的要求,也就是设计接口并让头文件和测试之间达成一致(有时你所选择的名字已经在其他地方用过了,你会在这一步中发现这类问题)。 在接口和测试之间达...

文章 2017-08-01 来自:开发者社区

《测试驱动的嵌入式C语言开发》——3.6节增量式前进

3.6 增量式前进刚刚接触TDD的人往往为这样的早期版本代码而感到困惑。“我们什么也没有测到(你可能这样想),这只是些硬编码的返回值”;“或者测试太小了,我们只是在各种活动间跳来跳去”。让我来进一步解释。DTSTTCPW:先仿冒再建造回首我刚刚学习极限编程时,Kent Beck在黑板上写下了这个很到位的缩写:DTSTTCPW。它读起来还蛮押韵的;我希望我也能找到那么押韵的一组词。它是Do The....

文章 2017-08-01 来自:开发者社区

《测试驱动的嵌入式C语言开发》——3.5节先测试驱动接口再测试驱动内部实现

3.5 先测试驱动接口再测试驱动内部实现好的接口对于设计良好的模块来讲很关键。前面几个测试会驱动接口设计。关注于接口意味着我们是从外向内开发代码的。测试作为接口的首个用户,从调用者(或客户端代码)的角度给出了开发代码的使用方式。从使用者的角度出发会产生可用性更强的接口。我通常也会让前面的几个测试来检验一些产品代码的边界条件。选择一个带边界检查的简单用例。 为了消除这个编译错误,在模块的接...

文章 2017-08-01 来自:开发者社区

《测试驱动的嵌入式C语言开发》——3.4节写第一个测试

3.4 写第一个测试现在测试列表已经有了,我们可以开始了。很自然,第一个测试是去测试初始化是否正确。LED在初始化后应当全部关闭。首先我们要建立LedDriver测试文件。按照惯例,可以将它命名为LedDriverTest.c。我通常把测试代码放在一个与产品代码不同的目录里。我会把这些代码放在unity/LedDriver目录中,并调整makefile从而让它能编译和链接这个新的测试文件。给测试....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

开发与运维

集结各类场景实战经验,助你开发运维畅行无忧

+关注