Is there any framework which supports Behaviour driven approch (bdd) for selenium-webdriver with driver managment? - selenium

I want to start my automation project from scratch, as per requirements I have to use Behavior Driven Approach for testcase authoring and selenium for Automation. please suggest best suited framework.

You can check open source QMetry Automation Framework for web (selenium-webdriver) and mobile (appium) automation. It has all the features driver management, parallel execution, run configuration you want and many more like data-driven testing, data-bean, locator repository, integration with third party tools (CI, Test Management tools etc).
It support BDD, keyword-driven and coded (TestNG test) approach for authoring test cases. So you can opt bdd for test authoring.
You also will find inbuilt bdd steps ready to use for selenium webdriver and rest-webservices with the framework.
You can start by downloading blank project from git which uses ANT and IVY. If you want to use maven you can download qaf-blank-project-maven.
For getting started follow step-by-step-tutorial

Related

How to integrate LeanFT Selenium with HP QC

Now I am using Selenium (Java + Maven + Jenkins + TestNG + GitHub) with Microsoft Test Manager (Test Management Tool) for UI Automation. Microsoft Test Manager provides the APIs to integrate/map the manual tests from test manager to automated tests from Selenium.
Now we are planning to use LeanFT with Selenium (with LeanFt we can use Selenium, .Net- Visual Studio or UFT) for UI automation and HP QC (Test Management Tool).
Here I want to know:
How to integrate LeanFT Selenium with HP QC or How to map manual tests from HP QC to automated tests in LeanFT Selenium? (If you are using QTP/UFT you can open the manual test in QC and click on QTP/UFT icon to create related automated test).
Which tool can be used for SCM or Version Control, git and GitHub or LeanFT provides in built support for java code also? (In case if you are using QTP, no need to use external SCM).
From where to run the tests, from Jenkins or QC (In QTP + QC integration, you can run tests directly from QC also)?
Let me try to answer your questions:
Which version of HPE ALM(QC) you use? Is it already the new gig called ALM Octane? In case you have an older version you need to think about VAPI-XP Tests. This is the generic test type for everything that HPE QC doesn't support out-of-the-box. Newer versions of HPE ALM however support LeanFT as a Test Type. Here is the offical doc on test types for the latest version and here a little tutorial.
Unlike UFT, LeanFT is just the Test Automation Framework, it does not come bundled with an IDE (Which I personally consider good) - so depending on the IDE you use to develop code (eclipse, intellij, visual studio) - you can and should use any plugin that supports it. Definitely git is an easy and good pick.
Jenkins has plugins to trigger UFT Tests from QC or the FileSystem and then pick-up results automatically. In the case of LeanFT as mentioned it neither comes bundled with an IDE or Test Execution Engine so you can use JUnit, TestNG or any other execution engine to achieve this. For doing full Continuous Integration; QC is not that good (HPE seemed to abandon development there) so it is definitely Jenkins. The new Gig(Octane) did not even try to build an own CI System but just wrapped Object models of existing ones into it's own pipeline representations. For integrating with QC, you may have to write some scripting / utilities to upload stuff to QC using the OTA API - which is the client side Automation Framework of HPE QC
Below are the tutorials for OTA API if you need them
https://sumeetkushwah.com/2015/03/19/connecting-almqc-using-hps-otaopen-test-architecture-api/
And here is a github project with alot of examples and wrapper functions
https://github.com/sumeet-kushwah/ALM_OTA_Wrapper
Best place to run tests is from jenkins as suggested by Bela. Below is the article detailing that process
https://sumeetkushwah.com/2015/03/24/implementing-ci-using-jenkins-and-uft/

BDD Cucumber test management tool

Is there an open source tool available to control the running of BDD cucumber tests?
We are developing BDD cucumber tests and would like the option to control the tests when running them (start/stop/pause/restart) using an open source (or proprietary) test tool.
The short answer it, yes.
The somewhat longer answer is that it depends on your echo system.
If you are using Java, then any build tool will be sufficient. That is Maven, Gradle or similar. These are easy to integrate in your Continuous Integration, CI, environment. With a tool chain like that, you are able to execute Cucumber on every build and will always know if your system works or not.
Yes , but in small scope (Automation tests) and less process control related to run and control tests ,In high scope with multiple branches and projects i think you have to move to Jenkins with full control.
Following link describe the coparsion : https://www.saashub.com/compare-jenkins-vs-cucumber

Tool for Automation Testing on unity-webplayer

I need a automation tool for my web application that develop in unity webplayer. I am a beginner in Unity development, a complete step-by-step tutorial would be awesome.
You can use Integration Test Framework in the Unity Test Tools
Integration Tests allow you to automate the verification process of your assets directly in a scene. They are designed to be used on existing content, directly within the Editor, to build tests which verify the behaviour of single assets or the interaction between them.
How to use the Integration Test Framework you can read here https://bitbucket.org/Unity-Technologies/unitytesttools/wiki/IntegrationTestsRunner

Automated testing for Flash/Flex application

I have to do Automated testing of Application based on Flash builder, after searching on this topic i came to know that flash builder includes Testing API's, and these API's supports HP QTP so After Including Testing API's in my application and making test cases Scripts based on VB scripts I can do automated testing, how should i do automated testing of application based on Flash builder.
You should take a look at Flex Mojos, which is a Maven Plugin. You can use it for automated builds and tests as well.

Is TestNG enough as a web test framework?

I just moved into web testing using Selenium and have been learning Selenium WebDriver + Java.
My question is, why do I need to build a test framework when TestNG is there?
What is there that TestNG cannot do as a framework?
Nothing :-)
More seriously, TestNG is very popular with Selenium users for a variety of reasons, among which support for:
Dependencies (very convenient to test pages that follow each other).
Parameterization with #DataProvider (useful to test various combinations of browsers and user agents).
Parallel tests (lets you test on multiple browsers simultaneously).
Check out the Selenium forums for more information and feel free to email the testng-users list if you have questions.
Yes, I think TestNG is enough as a web test framework. If you are familiar of using JUnit, It is easier to switch into TestNG
Building a custom framework may be necessary at times.
And you can use TestNG for that. :)