- 背景
我正在尝试测试Express应用程序.这对我来说是一个爱好项目,所以我没有使用Express来提供JSON api(通常这样做).
- 问题
问题是,我无法找到一种方法来测试视图的内容,以确保页面实际上是针对项目本身的视图文件呈现的.
- 我试过的
例如,我无法测试一个简单的索引页面,因为该jade文件以extends layout.这使得难以测试是否呈现动态内容.
有没有人建议测试视图是否实际呈现?
it ('renders the index page', function(done) {
var jade = require('jade');
var should = require('should');
var fs = require('fs');
supertest(app)
.get('/')
.expect(200)
.end(function(err, res) {
var rawJade = fs.readFileSync('./views/index.jade').toString();
res.text.should.equal(rawJade.convertToHtml()); // jade supports a function like this
});
)};
Run Code Online (Sandbox Code Playgroud) 我正在研究C中的一个小型开源项目,我正在尝试使用带有C的测试框架(框架min_unit).
我有一个foo.h原型文件,并foo.c与实现.
在我的测试文件中tests.c,我有
#include "../test_framework/min_unit.h"
#include "foo.c"
... test cases ...
Run Code Online (Sandbox Code Playgroud)
问题是,因为我有一个main()函数foo.c(我需要编译它),我无法编译,tests.c因为我得到一个错误,指出
note: previous definition of ‘main’ was here
int main() {
Run Code Online (Sandbox Code Playgroud)
我的问题是,是否有一种方法可以使main()函数处于foo.c有条件状态,以便在运行时它不会编译tests.c?只需要一遍又一遍地删除和添加main就太烦人了.
我正在尝试在开源项目中使用C中的链表实现队列.我已经实现了Queue,编写了单元测试,并使用valgrind解决了大部分内存泄漏问题.
现在的问题是,我一直试图找到这几个小时的最后8个字节的泄漏,我似乎无法弄明白.
这是valgrind的输出:
==25806== 8 bytes in 1 blocks are definitely lost in loss record 1 of 1
==25806== at 0x402BE68: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==25806== by 0x80484E3: node_create (in /home/karysto/c-datastructures/queue/tests.out)
==25806== by 0x8048511: enqueue (in /home/karysto/c-datastructures/queue/tests.out)
==25806== by 0x8048851: test_dequeue_updates_size (in /home/karysto/c-datastructures/queue/tests.out)
==25806== by 0x8048978: test_suite (in /home/karysto/c-datastructures/queue/tests.out)
==25806== by 0x80489B0: main (in /home/karysto/c-datastructures/queue/tests.out)
==25806==
==25806== LEAK SUMMARY:
==25806== definitely lost: 8 bytes in 1 blocks
==25806== indirectly lost: 0 bytes in 0 blocks
==25806== possibly lost: 0 bytes in …Run Code Online (Sandbox Code Playgroud) c ×2
testing ×2
compilation ×1
memory-leaks ×1
mocha.js ×1
node.js ×1
pointers ×1
rendering ×1
valgrind ×1