@reportfy/tester
v1.2.9
Published
Lib para teste de integração usando serviço do reportfy
Downloads
87
Maintainers
Readme
@reportfy/tester
Tester de integração para clientes que utilizam node.js.
Sobre reportfy: clique aqui
Sobre a tester.
instalação
Usando npm:
$ npm install @reportfy/tester
Usando yarn:
$ yarn add @reportfy/tester
Configuração
Para configuração é necessário acessar o sistema da reporfy e criar seus casos de teste, com isso terá o token para integração do sdk.
Após a instalação do sdk no package.json
será criado um script de inicialização no projeto.
{
"name": "test",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"scripts": {
"tester": "npx reportfy -k sua_chave_aqui' -ac 'access_key', -se 'secret_key' -s index.js -t express"
},
"dependencies": {
"@reportfy/tester": "^1.1.5",
"express": "^4.17.1"
}
}
O campo -k
é obrigatório, serve para obter seus planos de teste na aplicação e que os relatórios sejam enviados para reportfy.
O campo -s
é obrigatório, serve para obter a aplicação inicial e executá-la para iniciar os testes localmente.
O campo -ac
é obrigatório, chave secreta para leitura de dados que contém criptografia da sua área de trabalho(workspace).
O campo -se
é obrigatório, chave secreta para leitura de dados que contém criptografia da sua área de trabalho(workspace).
Os frameworks que estão disponíveis para rodar localmente são:
Clientes
Configurações de frameworks são diferenciadas para cada um, segue abaixo configuração simples de cada framework com as suas particularidades.
Koa
Exemplo base para criação de uma api no framework koa.
Iniciando o projeto.
$ npm init
Instalando dependências
Com npm.
$ npm install koa koa-body koa-router @reportfy/tester --save
Com yarn.
$ yarn add koa koa-body koa-router @reportfy/tester
Arquivo index.js
para inicializar o projeto.
const Koa = require('koa');
const koaBody = require('koa-body');
const app = new Koa();
const Router = require('koa-router');
app.use(koaBody());
// Prefix all routes with: /books
const router = new Router({
prefix: '/api'
});
router.get('/user', (ctx, next) => {
ctx.body = {name: 'hello world'}
next();
});
// Use the Router on the sub route /books
app.use(router.routes());
app.listen(3000);
module.exports = app
Executando os testes.
$ npx reportfy -k sua_chave_aqui' -ac 'access_key', -se 'secret_key' -s index.js -k koa
Express
Exemplo base para criação de uma api no framework express.
Iniciando o projeto.
$ npm init
Instalando dependências
Com npm.
$ npm install express @reportfy/tester --save
Com yarn.
$ yarn add express @reportfy/tester
Arquivo index.js
para inicializar o projeto.
const express = require('express')
const app = express()
app.use(express.json({}))
app.post('/api/user', (req, res) => {
res.status(200).json(req.body)
})
app.get('/api/user/:name', (req, res) => {
res.status(200).json()
})
app.listen(3000, () => console.log('listening http://localhost:3000'))
module.exports = app
Executando os testes.
$ npx reportfy -k sua_chave_aqui' -ac 'access_key', -se 'secret_key' -s index.js -k express
HapiJS
Exemplo base para criação de uma api no framework HapiJS.
Iniciando o projeto.
$ npm init
Instalando dependências
Com npm.
$ npm install @hapi/hapi @reportfy/tester --save
Com yarn.
$ yarn add @hapi/hapi @reportfy/tester
Arquivo index.js
para inicializar o projeto.
const Hapi = require('@hapi/hapi')
const server = Hapi.server({
port: 3000,
host: 'localhost'
});
server.route({
method: 'POST',
path: '/api/user',
handler: (request, reply) => {
return request.payload
}
});
server.start();
module.exports = server
Executando os testes.
$ npx reportfy -k sua_chave_aqui' -ac 'access_key', -se 'secret_key' -s index.js -k hapijs
Restify
Exemplo base para criação de uma api no framework restify.
Iniciando o projeto.
$ npm init
Instalando dependências
Com npm.
$ npm install restify @reportfy/tester --save
Com yarn.
$ yarn add restify @reportfy/tester
Arquivo index.js
para inicializar o projeto.
const restify = require('restify');
const server = restify.createServer();
server.get('/api/user', (req, res) => {
return res.send()
});
server.post('/api/user', (req, res) => {
return res.send()
});
module.exports = server;
Executando os testes.
$ npx reportfy -k sua_chave_aqui' -ac 'access_key', -se 'secret_key' -s index.js -k restify