Behaviour driven development
BDD is a methode in which how the users are interacting with the website, and how the website is responding in each and every actions.
Eg: consider a user is trying to register to our software system, as a developer of VirtualX let allow to say an example based on the virtualx online examination system. Consider a functionality “Register” it will included lots of Unit test cases all test cases pass then the functionality implemented completely by considering all the test scenerios and cases.
A student is clicking on the Register button a registration window should get load and there should be mandatory field such as name,email
if i focused the cursor to the name field and without giving any input change the focus then should show the validation (This is a unit test case),
Ther should be email validation , after giving all the imputs then the system have to find the “register” button and should able to click on that.
If clicked then the confirmation message should get loaded and should navigate to the confirmation page.
Eg: When signin

describe “The signin process” do
it “signs me in” do
visit ‘/log_in’
within(“#container”) do
fill_in ‘Email’, :with => ‘[email protected]
fill_in ‘Password’, :with => ‘mypasskey’
end
click_button ‘Log in ”
expect(page).to have_content ‘Successfully logged in ‘
end
end
This block is an example for the BDD and its include many small test cases.

When we running out the code it will show if there is any error “such as “Not able to find ‘Log in ” button. Etc
The selenium is a very popular behaviour testing tool, it perform like an end user interacting with the software system.