Frisby.js

Frisby is a REST API testing framework built on node.js and Jasmine.

Install Frsiby.js

Install Frisby.js with NPM locally. Execute the following command in your project folder.

sudo npm install frisby

Write Tests

Frisby tests start with frisby.create(‘Test Title’), where Test Title is a description for this test.

The tests are then followed by one of the HTTP methods (get, post, …, etc). For example, .get(url) make a GET request to url.

The tests can be chained with expects after the HTTP methods. For example, .expectStatus(200) tests if the response status is 200.

The tests end with .toss() to generate the resulting Jasmine tests.

Run Tests

Frisby.js uses the Jasmine-node test runner.

Write the tests in *.js files and put them in the /spec folder.

Note: The test files must be named as *spec.js in order for jasmine-node to find them

Run the tests with the command jasmine-node spec/ and the result of the test should show.

Generate Test Reports

To generate test reports in JUnit format, use –junitreport argument with jasmine-node command.

A Simple Example:

This simple example includes a HTTP server for GET, PUT, POST, DELETE requests. The server will return a json object with method field being the request type.

For example, the server will respond to a GET request with {“method”:”GET”}.

Each test case includes sending a request and check the HTTP status code, response header, and response JSON body.

For example,

frisby.create(‘GET Method’)
.get(‘http://localhost:4000’)
.expectStatus(200)
.expectHeaderContains(‘content-type’, ‘application/json’)
.expectJSON({
method : ‘GET’
})
.expectJSONTypes({
method : String
}).toss();


Posted

in

by

Tags:

Recent Post

  • Mastering Hyperparameter Tuning in Python: Strategies, Techniques, and Tools for Model Optimization

    Understanding various aspects of deep learning and machine learning can often feel like stepping into uncharted territory with no clue where to go. As you start exploring various algorithms and data, you realize that success is based on more than just building a raw model, it’s more about fine-tuning it to perfection. And when we […]

  • What is Transfer Learning? Exploring The Popular Deep Learning Approach

    Have you ever thought about how quickly your smartphone recognizes faces in photos or suggests text as you type? Behind these features, there’s a remarkable technique called Transfer Learning that expands the capabilities of Artificial Intelligence. Now you must be wondering- What is Transfer Learning ? Picture this: Instead of starting from the square from […]

  • LLMOps Essentials: A Practical Guide To Operationalizing Large Language Models

    When you engage with ChatGPT or any other Generative AI tool, you just type and enter your query and Tada!! You get your answer in seconds. Ever wondered how it happens and how it is so quick? Let’s peel back the curtain of the LLMs a bit. What actually happens behind the screen is a […]

  • Building Intelligent AI Models For Enterprise Success: Insider Strategies 

    Just picture a world where machines think and learn like us. It might sound like a scene straight out of a sci-fi movie, right? Well, guess what? We are already living in that world now. Today, data, clever algorithms, and AI models are changing the way businesses operate. AI models are serving as a brilliant […]

  • Introducing Google Vids in Workspace: Your Ultimate AI-Powered Video Creation Tool

    Hey there, fellow content creators and marketing gurus! Are you tired of drowning in a sea of emails, images, and marketing copy, struggling to turn them into eye-catching video presentations? Fear not, because Google has just unveiled its latest innovation at the Cloud Next conference in Las Vegas: Google Vids- Google’s AI Video Creation tool! […]

  • Achieve High ROI With Expert Enterprise Application Development

    Nowadays modern-day enterprises encounter no. of challenges such as communication breakdown, inefficient business processes, data fragmentation, data security risks, legacy system integration with modern applications, supply chain management issues, lack of data analytics and business intelligence, inefficient customer relationship management, and many more. Ignoring such problems within an organization can adversely impact various aspects of […]

Click to Copy