JavaScript for Line of Business Applications
596.1K views | +0 today
Follow
JavaScript for Line of Business Applications
Keeping track of current JavaScript Frameworks that help design your clientside Business Logic Layers.
Curated by Jan Hesse
Beam to my Inbox:
Your new post is loading...
Your new post is loading...

Popular Tags - Filter using the Funnel

Current selected tag: 'CucumberJS'. Clear
Scoop.it!

Functional testing with cucumber and protractor

Functional testing with cucumber and protractor | JavaScript for Line of Business Applications | Scoop.it
Now I love Behaviour Driven Development I love it for many reasons but my main reason is the way it completes my development process. TDD allows me to test how my code works to validate that the new function has been implemented correctly, to put me in the mindset of writing minimalist and well structured code and to give me confidence I am not breaking any existing code. It is not so great at describing behaviour that the system is supposed to exhibit and if you work with an Agile methodology it is a pretty terrible interface between the developer and the customer.
No comment yet.
Scoop.it!

Cucumber.js browser runner

Browser runner for cucumber.js library This runner is a wrapper around cucumber.js library which is responsible for running a tests written in Gherkin

No comment yet.
Scoop.it!

BDD in JavaScript V: CucumberJS and The Browser, II

BDD in JavaScript V: CucumberJS and The Browser, II | JavaScript for Line of Business Applications | Scoop.it

The intent of this article is to address incorporating cucumberjs-browser into our current Grocery List Application example and continue developing features that involve User Interaction with the DOM.

The cucumberjs-browser CLI tool was created to provide a means in which to write my FeaturesStep Definitions and support files as I normally would for a project, and bundle them to be run in a browser and provide custom reporting.

In a pervious article in this series, we added an add-item feature that detailed the scenarios of adding and accessible an item from a collection of the Grocery List application. This is still a valid logical feature that normally I would not modify to incorporate User Interaction when incorporating Features related to the application being browser-based. Instead, I would create a new Feature that details how a User can add and view new item in a browser environment.

Let's define our spec...

No comment yet.
Scoop.it!

BDD in JavaScript III: CucumberJS and Test Automation

BDD in JavaScript III: CucumberJS and Test Automation | JavaScript for Line of Business Applications | Scoop.it

The benefit of automation is in time saved. If we can pinpoint tasks that we do repetitively during development and automate them, we can save large amounts of time that could be put back into doing more coding, thinking, learning, laughing, beering - the list goes on.

While going through the basics of CucumberJS in the previous articles, I was demonstrating how I use the tool to TDD from the outside-in and constantly hopping back and forth from my code editor to the terminal to run this simple command over and over:

Now, I am pretty good at CMD+TAB - not to brag - but I would much prefer to get feedback on my tests instantly as I describe my asserts and modify my code. If we automate the running of Cucumber on file change, we can start seeing results quicker and we can take that time removed from manually switching between editor and terminal and running commands and put that time back into thinking how to design our code more cleanly :)

This automation and instant feedback really shows its worth in the Refactor phase in which you have previously implemented code to pass the criteria in a Feature.

No comment yet.
Scoop.it!

TuteCumber

TuteCumber | JavaScript for Line of Business Applications | Scoop.it
TuteCumber - Tutorial and example project for cucumber.js with node.js


Tutorial:
* Our System (Calculator)
* First feature: Addition (aka Stage 1)
* Second feature: Subtraction (aka Stage 2)
* Third feature: Chaining multiple operations (aka Stage 3)

No comment yet.
Scoop.it!

Running Browser-Based CucumberJS Specs in Testling

Running Browser-Based CucumberJS Specs in Testling | JavaScript for Line of Business Applications | Scoop.it

In my previous posts I discuss bringing CucumberJS specs to the browser using the cucumberjs-browser CLI tool. In this post I intend to address how to use the format reporting options of the cucumberjs-browser tool to enable integration with the testling automated cross-browser testing tool to run your specs in various browser environment targets that you may not have installed on your own system.

No comment yet.
Scoop.it!

BDD in JavaScript IV: CucumberJS and The Browser

BDD in JavaScript IV: CucumberJS and The Browser | JavaScript for Line of Business Applications | Scoop.it

In my previous post in this series detailing how I use CucumberJS, I addressed a few common bulid tools in JavaScript to automate the watching and running of tests. While beneficial to a proper agile workflow, I did not introduce any new concepts or development information directly associated with using CucumberJS, itself.

In this article, I intend to take on a pretty meaty subject - running your cukes in the browser. It is a subject I have grappled with for some time and have tried different solutions, eventually creating my own.

CucumberJS is built on Node. As such, the CLI tool that we have been running to verify our tests in previous articles is living in that environment.

This is well and good if we were creating an application that was intended to live within Node. However, what if we are building an application that is to live inside the browser, which is often the case for me as a, primarily, Front End Developer? How do we go from Features detailing DOM interaction to passing Step Definitions that require a browser environment using CucumberJS?

No comment yet.
Scoop.it!

BDD in JavaScript: CucumberJS

BDD in JavaScript: CucumberJS | JavaScript for Line of Business Applications | Scoop.it

CucumberJS is a JavaScript port of the popular BDD tool Cucumber (which itself was a rewrite of RSpec). It allows you to define Feature Specs in a Domain-Specific-Language (DSL) - called Gherkin - and run your specs using a command line tool which will report the passing and/or failing of scenarios and the steps they are comprised of.

It is important to note that Cucumber itself does not provide a default assertion library. It is a testing framework providing a command line tool that consumes defined Features and validates Scenarios by running Steps that are written in JavaScript. It is the developers choice to include the desired assertion library used in order to make those steps pass or fail. It is my intent to clarify the process by example through a single Feature with multiple Scenarios in this post.

If you had followed along in the previous TDD Series, you will find the specs defined in that series similar to Gherkin. In fact, I will be re-hashing a feature spec from that series to demonstrate working through your first cuke (aka, passing feature spec).

Jan Hesse's insight:

follow up:

http://custardbelly.com/blog/blog-posts/2014/01/22/cucumberjs-world/index.html

No comment yet.