How to integrate LeanFT Selenium with HP QC - selenium

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/

Related

Associate automated tests Robotframework with test cases in TFS

I am working using TFS to create test case. I have a automated test written in Robotframework with Selenium2Library.
I'd like to be able to associate these tests with test cas in test. Is it possible to link the automated test cases with the test case in TFS, and if so, how is it done?
The web Test page does not support to run automatic tests associated with test cases in TFS.
You can achieve the same goals using the Build & Release features in Team Foundation Server (TFS). (https://www.visualstudio.com/en-us/docs/test/lab-management/use-build-or-rm-instead-of-lab-management). Simply integrate Selenium testing into a continuous integration/continuous delivery pipeline.
Instead of build, suggest you use a step in a release pipeline. Take a look at this question:How can i run automated selenium tests using TFS build 2015?
More detail steps about how to integrate with TFS please go through the official tutorials from MSDN: Get started with Selenium testing in a CD pipeline

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

Run Automation UI Testing through Selenium and Coded UI Without Build from TFS

Our web application codes are stored on SVN instead with TFS. We are trying to set up our automated UI testing.
These are following tools our team are considered to use.
- Microsoft Test Manager (Create Test cases associate with User stories)
- Coded UI (Connect to TFS and Microsoft Test Manager)
- Selenium (Automated UI coded)
- Team Foundation Server 2015 (Test cases and User stories)
Web Application with URL
We only want to configure automated UI testing for our website. Is there any way to run the set up the automated testing without build through TFS?
Thank you and any feedback is appreciated.
So here is the thing,
Coded Ui is not a connector to TFS & MTM it by itself an automation
framework/tool like selenium
You don't need both Selenium & Coded UI for your automation. You only need either of it
If all you want is to get started with automation for your application, you can do it just with a version of visual studio which has Coded Ui. (The latest supporting version is Visual Studio 2015 Enterprise edition)
See this like to know How to create Coded Ui Tests , see this link to know how to Run a Coded Ui Test
It's based on your workflow. Whether your app/code is on-premises or in the cloud, you can automate build-deploy-test workflows and choose the technologies and frameworks, then test your changes continuously in a fast, scalable, and efficient manner. And just as Prageeth said, Coded Ui is an automation framework/tool just like selenium.
In TFS either code ui or selenium test more like continuous testing. The workflow is such as bleow:
First make sure that your app still works after every check-in and
build using TFS. Find problems earlier by running tests
automatically with each build. When your build is done, review your
test results to start resolving the problems that you find.
Add some related tutorials for your reference:
How to run Code UI in TFS: Executing Automated tests in Build vNext
using Test Plan, Test Suites
How to run Selenium in TFS: Get started with Selenium testing in a
continuous integration pipeline
If you insist on without building from TFS, you could also use the Code UI function with VS on local.
You can setup Test controller and Test Agent VMs in MTM test lab. This will allow you to execute your automated tests on Test Agent directly in MTM. Otherwise, you can execute Coded UI tests locally in Visual Studio.

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

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

Source Control for Selenium Tests written in Java

In my company, I have plans to introduce Web Automation using Selenium WebDriver and Cucumber JVM using Maven builds.
Since the developers write their code in C#, they are all using TFS for source code repository and recommending the QA team also to use TFS to maintain my tests written in JAVA.
These are the questions I have got in my mind:
QA team will use IntelliJ IDE for writing Selenium tests in JAVA. Is IntelliJ compatible with TFS? Or is it a pain to configure it to work with TFS?
As we will move towards TDD very soon, we have to setup CI server as well.
Is it possible for me to run Selenium Tests triggered from TFS or do I need to use a separate CI server like Jenkins or Teamcity?
Does maven build work smoothly with TFS?
We have to adhere to stringent ISO guidelines for maintaining the source code. If I were to recommend source code repositories like github, can I ensure that the code is still secure? Is it difficult to setup the security in github?
Answering your questions regarding TFS:
IntelliJ IDEA supports TFS up to TFS 2015. Check:
Visual Studio Team Foundation Plugin for IntelliJ and Android Studio
Using TFS Integration
TFS supports CI build. After you've deployed a Windows build agent or an Xplat build agent, you are ready to define a CI build that compiles your Java app with Maven whenever your team checks in code.
Yes. Check:
Build your Java app with Maven