Articles of frisby.js

如何从Jasmine获得更好的terminal输出?

当我运行我的testing时,我在terminal输出中得到的是红色和绿色的点,我想看看所有规格的清单,以及他们是否通过或失败类似于摩卡和柴。 任何想法如何从茉莉花得到这个期望的输出?

如何扩展更多的“期望”functionfrisby.js?

有没有办法用自定义expect方法来扩展Frisby.js模块? 我不想修改源代码,这些扩展特定于我的REST API。 我的目标是通过将它们组合成一种方法来避免重复常见的testing。 问题是Frisby.js模块用这个代码导出它的方法: exports.create = function(msg) { return new Frisby(msg); }; 我如何将新方法添加到Frisby? 这更像是一个Javascriptinheritance问题,因为它适用于Node.js模块。 例如,testing.expect API的脚本会有很多重复的.expect子句,如.expectHeader()和.expectJSONTypes() 。 我想将这些结合到一个.expectSEwrapper()方法中。 此方法对于StackExchange API是唯一的,因此它不属于Frisby.js。 该脚本将如下所示: var frisby = require('frisby'); frisby.create('StackOverflow Info') .get('https://api.stackexchange.com/2.2/info?site=stackoverflow', {gzip: true}) .expectStatus(200) .expectHeader('content-type', 'application/json; charset=utf-8') .expectHeader('content-encoding', 'gzip') .expectJSONTypes('', { items: Array, has_more: Boolean, quota_max: Number, quota_remaining: Number }) .toss(); frisby.create('StackOverflow Badges') .get('https://api.stackexchange.com/2.2/badges?order=desc&sort=rank&site=stackoverflow', {gzip: true}) .expectStatus(200) […]

用Frisby.js进行rest apitesting

我有以下testing,写与Frisby.js : var frisby = require('frisby'); var CONSTS = { server: 'http://localhost:8000', headers: { 'Content-Type': 'application/json', 'Accept': 'application/json' } }; frisby.create('Ensure we are dealing with a teapot') .get(CONSTS.server + '/isAlive', {headers: CONSTS.headers}, {json: true}) .timeout(10000) .expectStatus(200) .toss(); 我得到这个结果: Failures: 1) Frisby Test: Ensure we are dealing with a teapot [ GET http://localhost:8000/isAlive ] Message: Expected […]

弗里斯比functiontesting标准

我是新来的,我一直在寻找方法(或标准)来编写适当的functiontesting,但我仍然有许多没有答案的问题。 我使用FrisbyJS为我的NodeJS API应用程序和jasmine-node编写functiontesting来运行它们。 我已经阅读了弗里斯比的文档,但对我来说并不富有成效。 这是一个场景: 客人可以创build一个User 。 (显然,不允许用户名重复) 创build一个User ,他可以login。 成功login后,他获得一个Access-Token。 User可以创build一个Post 。 然后一个Post可以有Comment ,等等… User创build后不能删除。 (不是从我的NodeJS应用程序) 弗里斯比文档说的是,我应该在testing中写一个testing。 例如(full-test.spec.js): // Create User Test frisby.create('Create a `User`') .post('http://localhost/users', { … }, {json: true}) .expectStatus(200) .afterJSON(function (json) { // User Login Test frisby.create('Login `User`') .post('http://localhost/users/login', { … }, {json: true}) .expectStatus(200) .afterJSON(function (json) { // Another Test […]

使用frisby.js或jasmine-nodetesting证书到期

我试图写一个testing用frisby.js检查证书的状态。 在证书过期n天之前,testing应该失败,n在下面定义: config.numberOfDaysBeforeTestFails 我用这个代码试了一下: var frisby = require('frisby'); var config = require('../config'); //load own config-file var request = require('request'); frisby.create('https2.0 – Perperation') .get(config.server + '/testData') .auth(config.username, config.passwort) .after(function(err, res, body){ var auth = "Basic " + new Buffer(config.username + ":" + config.passwort).toString("base64"); var r = request({ url: '<serverURL>', requestCert: true, rejectUnauthorized: false, headers : { […]

我能输出并查看Frisby.js请求吗?

我开始使用frisby.js,我也是Jasmine和node.js的新手。 在经过我第一次frisbytesting之后,我想知道是否有可能将testing中的请求输出到控制台,以便我可以validation每次运行我的testing时都有正确的请求标头和请求主体等同 jasmine-node myproj/spec 我认为这可能是有用的,如果这些请求也将包括在报告中,当我运行我的testing – junitreport选项 我最初希望用–verbose运行我的testing会提供这个,但–verbose似乎只输出最高级别的testing的请求方法和URL,而不是使用after()或afterJSON()嵌套在它下面的任何testing,这也令人失望! 我试过四处搜寻,但没有find这个简单的问题的答案,任何帮助将不胜感激谢谢!

使用量angular器+茉莉花的APItesting

有没有人用茉莉花量angular器做APItesting。 在search这个时,我知道使用frisby.js我们可以做APItesting。 但是,我的疑问是,量angular器或茉莉花是否直接支持/提供APItesting的function。 有人试过这个吗? 如果是的话,我需要遵循什么方法? 提前致谢。

有没有办法用Jasmine NodeJS发送JPG?

我试图用FrisbyJS(它位于Jasmine for Node的顶部)testing我的API。 我想知道是否有人知道如何使用茉莉花提交/发送图像? http://frisbyjs.com/ 我目前的代码是… var frisby = require('frisby'); var URL = 'http://localhost/api'; frisby.globalSetup({ request: { headers: { 'Content-Type': 'application/x-www-form-urlencoded', 'Accept': 'application/json', 'api': 'key' } }, timeout: (30 * 1000) }); frisby.create('submit an image') .post(URL + 'image', {images: '@test.jpg'}, {method: 'POST'}) .expectStatus(200) .afterJSON(function(cart){ console.log('made it!'); }) }).toss(); 我得到以下错误: 1) Frisby Test: submit an image […]

testingAPI如何使用node.js处理无效的JSON语法请求主体

我想testing一个REST API如何处理一个具有无效JSON语法的主体的POST请求,例如一个缺less的逗号。 我正在使用node.js来编写APItesting。 我正在使用弗里斯比,但我也尝试超级 。 没有运气。 使用以前的工具,您将请求主体作为JavaScript对象传递,所以不行。 我也试图通过无效的JSON作为一个string没有任何运气,因为一个string也是有效的JSON(下面的例子)。 有任何想法吗? frisby.create('Ensure response has right status') .post('http://example.com/api/books', '{"invalid"}', {json: true}) .expectStatus(400) .toss();