从正确的方式开始测试你的Go应用

/**
 * 谨献给Yoyo
 *
 * 原文出处:https://www.toptal.com/go/your-introductory-course-to-testing-with-go
 * @author dogstar.huang <chanzonghuang@gmail.com> 2016-08-11
 */

本翻译已被图灵社区转载至《码农·Just Go!(第27期)》

在学习任何新的东西时,具备清醒的头脑是很重要的。

如果你对Go相当陌生,并来自诸如JavaScript或Ruby这样的语言,你很可能习惯于使用现成的框架来帮助你模拟、断言以及做一些其他测试巫术。

现在,消除基于于外部依赖或框架的想法!几年前在学习这门出众的编程语言时,测试是我遇到的第一个障碍,那时只有相当少的一些资源可用。

现在我知道了,在GO中测试成功,意味着对依赖轻装上阵(如同和GO所有事情那样),最少依赖于外部类库,以及编写更好、可重用的代码。此Blake Mizerany的经验介绍敢于向第三方测试库尝试,是一个调整你思想很好的开始。你将看到一些关于使用外部类


继续阅读»»»

编写可测试的JavaScript代码

/**
 * 谨献给可爱的小黑
 *
 * 原文出处:https://www.toptal.com/javascript/writing-testable-code-in-javascript
 * @author dogstar.huang <chanzonghuang@gmail.com> 2016-04-02
 */

不管我们正是使用的是像Mocha或Jasmine这样结点配对的测试框架,或者是像PhantomJS这样模拟浏览器围绕DOM 依赖的测试,现在我们对于JavaScript单元测试的选择都比以前好了很多。

然而,这并不意味着我们要测试的代码如同我们的工具那样容易!组织和编写易于测试的代码需要一些努力和计 划,但这里有一些由函数编程概念启发的模式,可用于当需要测试代码时避免我们陷入痛苦之中。在这篇文章中, 我们将探索一些用于编写可测试的JavaScript代码的有用技巧与模式。

分离业务逻辑与显示逻辑

基于JavaScript浏览器应用的早期工作之一是侦听由终端用户触发的DOM事件, 然后通过运行一些业务逻辑和在页面上显示结果来向用户作出响应


继续阅读»»»