End-To-End Selenium Testing With HyperTest


HyperTest from LambdaTest lets you run end-to-end Selenium tests at the fastest speed possible. On the inside, HyperTest differs from a cloud-based Selenium Grid. We term it as ‘E2E Selenium testing experience on steroids ’, as HyperTest provides a blazing fast test execution experience.

HyperTest lets you achieve optimal browser coverage through scalable and reliable parallel testing achieved using YAML-based concurrency control. Instead of moving the Hub close to you, HyperTest brings the test scripts close to the Hub!

TABLE OF CONTENTS:

Key Features Of HyperTest

HyperTest is an enterprise-only automation testing solution where a great deal of importance is given to performance, integration(s), security, and end-user experience.

Here are some of the pivotal features that make HyperTest different from other test automation platforms (be it cloud or local):

  • Access to all the LambdaTest features (e.g. detailed logs, Smart CI features, Network insights, Video recording, Access to browsers & platforms on the cloud)>/p>
  • YAML-based workflow for optimal and precise concurrency management.
  • Availability in 60+ regions supported by Microsoft Azure.
  • Availability of dedicated proxy support for secure connections.
  • Flexibility to run Selenium tests across different browsers, browser versions, and platforms with minimal (to no) changes in existing Selenium tests (running on the LambdaTest Selenium Grid).
  • Support for two different execution mechanisms: Matrix-based Build Multiplexing and Smart Auto Test Splitting to run Selenium tests using HyperTest.
  • Seamless integration with CI/CD tools that can be integrated with LambdaTest Selenium Grid.
  • Compliance with leading security standards – SOC2, GDPR, and CCNA.
  • End-to-end encryption of the data in the entire testing lifecycle (i.e. encryption of data at rest and data in transit).

HyperTest v/s Traditional Test Grids

Traditional automation testing solutions are slow since the triggered test scenarios are first sent to the Hub, which in turn are scheduled to run on the best-suited Node. This results in unnecessary lag as a number of parties are involved in the entire process.

Here is a diagrammatic representation of how tests are run using traditional solutions:


On the other hand, HyperTest accelerates test execution at a massive scale with proprietary features mentioned below:

  1. Smart Auto Test Splitting for parallel test execution through custom filters.
  2. Matrix-based build multiplexing that lets you run Selenium tests at scale by making changes in the YAML-based workflow definition file.
  3. Auto purging of environments after build completion.
  4. Smart Caching for speeding up the regression tests.

Security is at the core of all the tests run using HyperTest. The data which is backed by the Azure cloud storage is encrypted when the data is in motion or at rest. There is continuous auditing to secure your test execution environment(s).

Here is the diagrammatic representation of how tests are run on the HyperTest infrastructure:


As seen above, tests are securely run on dedicated machines on the Azure cloud. The cloud (for execution) is chosen based on the location from where the concierge (i.e. HyperTest CLI) is triggered.

What Is Concierge In HyperTest?


Concierge is CLI (Command-Line Interface) that lets you access HyperTest components for running Selenium automation tests.

For triggering tests using Concierge, you have to download the Concierge binary corresponding to the platform (or OS) from where the tests are triggered:

Platform

Concierge download location

Windows

https://downloads.lambdatest.com/concierge/windows/concierge.exe

Mac

https://downloads.lambdatest.com/concierge/darwin/concierge

Linux

https://downloads.lambdatest.com/concierge/linux/concierge

Concierge provides different command-line flags that let you customize the HyperTest experience. Once you download the Concierge in your machine, run the command concierge.exe --help on the terminal to explore the different flags.

Here are the overall options (or flags) supported by the Concierge binary:

Flags

Type

Description

-c, –concierge-config string

string

Config file used for testing

-i, –config string

string

Custom location of hypertest.yaml

–download-artifacts

NA

Whether artifacts have to be downloaded or not

–download-artifacts-path

string

Directory where the artifacts have to be downloaded

-e, –env

string

Environment

-k, –key

string

LambdaTest Access Key

–no-track

NA

Whether the progress of the uploaded jobs needs to be updated or not

–preserve-payload

NA

Whether the job payload not be deleted after the job has been completed successfully

-t, –target-directory

string

Directory where the test script has to be uploaded

-z, –use-zip

string

Path of the zip file that needs to be uploaded

-u, –user

string

LambdaTest username

–verbose

NA

Logging of every proxy request to stdout

–version

NA

Prints the concierge version

-h, –help

NA

Concierge help

 

Different Methods Of Test Execution Using HyperTest


Through a YAML-based workflow file, HyperTest provides two different mechanisms to run tests on the LambdaTest grid.
.

1. Matrix-based Build Multiplexing
Here, the combination of [ Platform + Browser + Browser Version ] is supplied to the test suite(s) in the matrix format. The dictionary is represented in the YAML file [ .hypertest.yaml ] using the key : value form.

As shown above, the OS (or platform) is set to Windows (or win), the browser is set to “Chrome”, and the browser version is set to the latest version (i.e. “latest”). We would touch upon the scenario key in further sections of the document.

Matrix-based build multiplexing in HyperTest is ideally used when you have to run specific test scenarios across different browsers and their corresponding browser versions. For example, this approach would be useful if you have to run “scenario1” on the “N” version(s) of Chrome and Firefox browsers (that are installed on the Windows 10 platform). Here, ‘N’ could be browser version number(s) that are common between the two web browsers e.g. 68.0, 69.0, 89.0, etc.

In case you want to perform cross browser testing on more browsers, versions, and platforms (or OS) that are supported on HyperTest; simply add them to the appropriate List.

Let’s modify the above YAML file to run the scenarios on the “latest” version of the Firefox browser:

Here is the gist of the HyperTest YAML file [ .hypertest.yaml ] described above:

Key

Value

Description

os

win

Platforms (or OS) supported by HyperTest  

version

“latest”, “latest-1”, “latest-2”

Browser versions supported by HyperTest

browser

“Chrome”, “Firefox”

Browsers supported by HyperTest

scenario

“scenario_name” … “scenario_name_n”

List of test scenarios that are in the feature file and have to be executed on HyperTest

In the example shown above, test scenarios [ “Scenario_1” and “Sceanrio_2” ] will be run on “latest” versions of Chrome & Firefox installed on Windows 10. Basically, a matrix of test combinations is created using the combination [ Platform + Browser + Browser Version ] provided in .hypertest.yaml.

A combination of test scenarios is generated using the following formula:

Total Test Scenarios = [Entries in os List] * [Entries in browser version List] * [Entries in browser List] * [Entries in scenario List]

If we take the earlier example, total test scenarios = (1 * 1 * 2 * 2) -> 4. Here is the list of the total test scenarios that would be run on HyperTest (based on the YAML file shown here):

Scenario No.

Scenario

OS

Browser

Browser Version

1

@Scenario1

Win (Windows 10)

Chrome

latest

2

@Scenario1

Win (Windows 10)

Firefox

latest

3

@Scenario2

Win (Windows 10)

Chrome

latest

4

@Scenario2

Win (Windows 10)

Firefox

latest

In further sections of this support documentation, we would look at the other options supported in the HyperTest YAML file (.hypertest.yaml).

2. Smart Auto-Test Splitting
In auto-splitting, test scenarios can be run parallelly on the HyperTest cloud by using the appropriate options for splitting the tests.
For enabling auto-test splitting, set the autosplit key to true in .hypertest.yaml.

Test splitting can be done on the basis of options supported by the test automation framework:
a. Filename(s).
b. ClassName(s).
c. Filters, and more.

Here is the diagrammatic representation of the “Smart Auto-Test Splitting” feature in HyperTest:

The testDiscoverer key is used for locating (or discovering) the tests that are a part of the project. You can use the combination of grep, awk, sed, and other such commands to locate the tests that you intend to run. For example, the following command (or value) when assigned to testDiscoverer key searches for the scenarios by matching the string Scenario [or Scenario Outline] in the .feature files located in the src directory of the project.

The concurrency key indicates the total of concurrent sessions that can run in parallel. For example, assume that the total number of test scenarios [ discovered via testDiscoverer ] are 27 and concurrency is 7. In that case, HyperTest would allocate 7 clean infrastructures for running tests in parallel.

Test scenarios on the same infrastructure run in a sequence whereas tests across machines (allocated to different infrastructure) run in parallel. Considering the above test scenario, this is how the tests would be scheduled (or run ) on HyperTest:

  • Test Executor – 1: 4 tests (running in a sequence)
  • Test Executor – 2: 4 tests (running in a sequence)
  • Test Executor – 3: 4 tests (running in a sequence)
  • Test Executor – 4: 4 tests (running in a sequence)
  • Test Executor – 5: 4 tests (running in a sequence)
  • Test Executor – 6: 4 tests (running in a sequence)
  • Test Executor – 7: 3 tests (running in a sequence)

All the Test Executors [1..7] run in parallel whereas tests within each executor run in a serial manner.

Deep Dive Into HyperTest YAML (.hypertest.yaml)


HyperTest YAML file can be considered as the backbone of the test execution done on the HyperTest cloud. Apart from the YAML entries discussed in the earlier section, a number of other entries (i.e. key: value pairs) are supported in the YAML file (.hypertest.yaml).

Here is the run down of the various entries supported by HyperTest YAML:

Key

Value

Description

user

LambdaTest UserName

LambdaTest username which is available in the Profile section  

key

Access Key

Access Key needed to access the HyperTest cloud. It can be fetched from the Profile section

globalTimeout

Numerical value in minutes (Default: 90 minutes)

Total time in seconds after which test execution should stop

testSuiteTimeout

Numerical value in minutes (Default: 90 minutes)

Timeout in minutes after which test suite will end

testSuiteStep

Numerical value in minutes (Default: 90 minutes)

Timeout in minutes after which Steps in the test suite should end

runson

 

OS on which Auto Split Test will be run (Optional)

Parameter specifying target OS. If not provided then infer from the matrix provided in the YAML file.

autosplit

Boolean, default – false

Set this value to true  if Auto Split-Test has to be enabled on HyperTest

retryOnFailure

Boolean, default – false

If x-binary should retry the testSuite on failure. Default value is false.

concurrency

Numerical value indicating the concurrency level

Indicates the number of concurrent sessions on HyperTest

testDiscoverer

String value indicating the command to discover tests/test suites, etc.

It is used for discovering (or locating) relevant tests via classnames, filters, filenames, etc.

testRunnerCommand

String

Command to trigger the test execution

matrix

String

e.g

python-version: [3.6]

os: [macos-latest, windows-latest]

browser: [Chrome 85.0, Firefox 75.0]

List of string lists. A matrix allows you to create multiple jobs by performing variable substitution in a single job definition. For example, you can use a matrix to create jobs for more than one supported version of a programming language, operating system, etc.

testSuites

String

Command to run the tests that were mentioned in the scenario key for matrix based test execution.

How To Run TestNG Cucumber Tests On HyperTest [To Be Updated]

Now that we have covered the essentials of matrix-based multiplexing and auto-split test execution, let’s look at how to run TestNG Cucumber tests using both mechanisms.

For demonstration, we create 6 feature files with simple test scenarios shown below:

  • Addition [Scenario Tag – @Addition, Scenario Name – Addition]
  • Subtraction [Scenario Tag – @Subtraction, Scenario Name – Subtraction]
  • Multiplication [Scenario Tag – @Multiplication, Scenario Name – Multiplication]
  • Modulus [Scenario Tag – @Modulus, Scenario Name – Modulus]
  • ToDo App -1 [Scenario Tag – @sample1, Scenario Name – Lambdatest ToDO test 1]
  • ToDo App – 2 [Scenario Tag – @sample2, Scenario Name – Lambdatest ToDO test 2]

For demonstration, we have created a project in Eclipse with the 6 feature files in the project\src\main\java\Features folder.

The step definitions corresponding to the test steps are available in the project\src\main\java\stepDefinitions folder.

Concierge corresponding to the platform of test execution is downloaded in the root folder of the project. Download Concierge from the location mentioned below:

Platform

Concierge download location

Windows

https://downloads.lambdatest.com/concierge/windows/concierge.exe

Mac

https://downloads.lambdatest.com/concierge/darwin/concierge

Linux

https://downloads.lambdatest.com/concierge/linux/concierge

Since we would be adding the LambdaTest username and access key in the concierge command, we avoid exporting the environment variables – LT_USERNAME and LT_ACCESS_KEY.

Create a new .hypertest.yaml file in the root folder of the project. The contents of the HyperTest YAML file purely depend on the execution mechanism used for triggering tests on HyperTest.

TestNG Cucumber Using Matrix-based Multiplexing


Our requirement is to run tests on the last four versions of Chrome and Firefox we browsers (i.e. “latest”, “latest-1”, “latest-2″, ” latest-3″).

All the scenarios mentioned below (pasted here for reference) will be executed using matrix-based multiplexing:

Values of keys globalTimeout, testSuiteTimeout, and testSuiteStep are set to 90 minutes.

The key values of os, version, browser, and scenario are added as lists under the matrix section.

TestNG Cucumber Using Auto-Split Test Execution

Realtime Native Mobile App Testing


Mobile app testing is the process of testing a mobile application to ensure that their functionality and usability is not comprised when installed across multiple Android and iOS devices. With LambdaTest, you can test mobile applications manually to ensure they perform seamlessly across all Android emulators and iOS simulators.

As of now, we have launched Realtime Native Mobile App Testing in the Beta phase.

Uploading An App


You can upload an app via a browser/finder or a public cloud link. If you don’t already have an app, the LambdaTest sample app will help you easily get started with native app testing.

Uploading An App Via Browser


Step 1: Login to your LambdaTest account. Visit ‘Real Time Testing‘ from the left panel and navigate to the ‘App Testing’.

Step 2: Click on ‘Upload’. You can select an application either by drag and drop or browse for and select the application. The uploading process will take few moments depending upon the application’size.

Your application will be uploaded successfully. Currently, you can upload .apk files up to 300 MB.

Uploading An App Via Public Cloud Link


Step 1: Login to your LambdaTest account. Visit ‘Real Time Testing‘ from the left panel and you’ll be routed to the App testing console page.

Step 2: Click on ‘URL’. Enter the App source URL and press Enter.

Your application will be uploaded successfully.

Testing Mobile Applications On Android/iOS


You can test your native mobile apps on Android emulators and iOS simulators. For demonstration, we will be picking up Android.

Step 1: Select Real Time Testing from the left panel and navigate to ‘App Testing’.

Step 2: Upload your Android app, select the device brand, choose the device and click on ‘START’.

An Android emulator will fire up where you can perform native application testing of your mobile apps.

Note: Similarly, you can perform mobile app testing on iOS simulators where all the steps and features will remain same.

Capturing Screenshots And Logging Bugs


Once the virtual machine is launched, you’ll notice the controller buttons on the left panel.

Step 1: Click on the ‘Mark As Bug’ icon

Step 2: Once the screenshot has been captured, you can download the captured screenshot by ‘Down Arrow’ icon or can use the built-in image editor tools to mark any bugs or tasks. After that click on ‘Mark as Bug’.

Step 3: An integration specific ticket will appear. For example, if you have integration with YouTrack then fill up the details of your bugs in the YouTrack ticket and click on ‘Create Issue’.

Your bugs will be marked successfully.

Recording Video Of A Test Session


Step 1: From the left panel, click on the ‘Video’ icon.

Step 2: Once you click, the video recording of a current test session will start. To stop the recording, click again on the same video button.

Step 3: To view your saved recording of test sessions, click on the ‘Gallery’ icon from the left panel and navigate to Video. You can even download these recordings to your local system by clicking on the ‘Down Arrow’ button.

DevTools For Live Debugging


Using developer tools, you can debug mobile apps on Android and iOS. Currently, you can view your Networks Logs, App Logs, and Device Logs. To view the logs, click on the ‘DevTools’ icon from the left and all the logs of the current device will be displayed.

Device Controls


With the device controls, you can change the keyboard language, the device orientation, put device to sleep mode, increase and decrease volume.

Changing Keyboard Language


From the left panel, select the ‘Device Controls’ icon and from the dropdown menu, select your desired keyboard language.

After a few seconds, your keyboard language will be changed.

Changing Device Orientation


From the left panel, select the ‘Device Controls’ icon and click on the ‘Rotate’ button.

The device will be rotated successfully.

Sleep Mode, Increase And Decrease Volume


From the left panel, select the ‘Device Controls’ icon. You’ll notice three buttons as highlighted below.

  • To put the device on sleep mode, click on icon.
  • To increase volume, click on icon.
  • To decrease volume, click on icon.

Setting The Idle Time Out


You can set the idle time out of your test session by clicking on the ‘Settings’ icon from the left panel. Select the dropdown menu and choose the desired idle time out.

Geolocation Testing Of Mobile Apps


You can test native mobile apps from different geolocations by clicking on ‘Settings’ icon from the left panel. Select the dropdown menu and choose the desired country on which you wish to perform the test.

You can perform Geolocation testing of mobile apps in the below countries.

  1. Argentina
  2. Australia
  3. Belgium
  4. Brazil
  5. Bulgaria
  6. Canada
  7. Chile
  8. China
  9. Croatia
  10. Colombia
  11. Czech Republic
  12. Denmark
  13. Finland
  14. France
  15. Georgia
  16. Germany
  17. Greece
  18. Hong Kong
  19. Hungary
  20. India
  21. Indonesia
  22. Ireland
  23. Israel
  24. Italy
  25. Japan
  26. Kuwait
  27. Malaysia
  28. Mexico
  29. Morocco
  30. Netherlands
  31. New Zealand
  32. Nigeria
  33. Norway
  34. Philippines
  35. Poland
  36. Portugal
  37. Qatar
  38. Russia
  39. Saudi Arabia
  40. Singapore
  41. South Africa
  42. South Korea
  43. Spain
  44. Sweden
  45. Switzerland
  46. Taiwan
  47. Thailand
  48. Turkey
  49. UAE
  50. Ukraine
  51. United Kingdom
  52. United States
  53. Vietnam

Installing Another App In A Running Test Session


You can upload another app inside a running test session either by uninstalling the existing app or by installing the new app. You can also upload the apps from the already uploaded app list.

Step 1: From the left panel, navigate to the Android icon and click on ‘Install New’.

Step 2: Once you click on Install New, you will need to upload your app either via browser or a URL.

Once your app is uploaded, you’ll be guided to the VM where the application will be automatically downloaded and installed on the particular emulator/simulator.

Killing The Application


You can kill/close the current running mobile application. Select the ‘Android’ icon from the left panel and click on ‘Kill App’.

Uninstalling The Application


You can uninstall the installed mobile application. Select the ‘Android’ icon from the left panel and click on ‘Uninstall App’.

Ending The Test Session


Step 1: From the left panel, click on the ‘End Session’ icon.

Step 2: A confirmation pop-up box will appear. Click on ‘Yes, End Session’.

You will be logged out from the test session.

That’s all about live-interactive mobile application testing. In case you have any questions, please reach out to us at our 24×7 Chat portal or you could mail us at [email protected].

LambdaTest Role-Based Access Control (RBAC)


For every enterprise that uses cloud services, access management for those cloud resources is vital. LambdaTest RBAC is an authorization system that allows seamless access management of LambdaTest resources. With LambdaTest role-based access control, you can control who has access to LambdaTest resources, how they can leverage those resources, and what domains they can have access to.

The LambdaTest RBAC will help you in creating the different teams and allot concurrency to those teams. In this way, you can perform the test automation by dividing the concurrency among the teams.

How To Add A New Team Member?


Step 1: Login to your LambdaTest account and navigate to Profile icon on the top-right. Click on ‘Manage Teams’.

Step 2: From the Team Members tab, click on ‘Invite’

.

Step 3: Enter the user’s e-mail address, select the user’s role and then select the Group. Click on ‘Send Invites’.

Note: You can also add multiple users by selecting ‘ADD ANOTHER’ or ‘ADD MULTIPLE’.

Invites will be sent to the selected users which they need to accept from their end. After accepting the invites, they will be on your team member list.

How To Create A New Group?


Step 1: Login to your LambdaTest account and navigate to Profile icon on the top-right. Click on ‘Manage Teams’.

Step 2: Select the ‘Groups’ tab and click on ‘Create Group’.

Step 3: Fill in the group name of your choice, add the team members to be added to the group and then allot the maximum concurrency. After providing the details, click on ‘Create’.

Your new group will be created successfully.

How To View A Group?


Step 1: Login to your LambdaTest account and navigate to Profile icon on the top-right. Click on ‘Manage Teams’.

Step 2: Select the ‘Groups’ tab. Navigate to the group that you want to view. Click on ‘See Users’ below the User category.

Your group details will be displayed.

How To Edit A Group?


Step 1: Login to your LambdaTest account and navigate to Profile icon on the top-right. Click on ‘Manage Teams’.

Step 2: Select the ‘Groups’ tab. Navigate to the group that you want to edit. Click on edit icon below the Max Concurrency category.

Step 3: You can edit the required fields such as Group name, add or delete users, and change concurrency. After editing, click on ‘Update’.

Your group details will be updated.

Note: You can also edit your Group details by selecting ‘See Users’ under the User category.

Then click on ‘Edit’.

How To Delete A Group?


Step 1: Login to your LambdaTest account and navigate to Profile icon on the top-right. Click on ‘Manage Teams’.

Step 2: Select the ‘Groups’ tab. Navigate to the group that you want to delete. Click on delete icon below the Max Concurrency category.

Your selected group will be deleted.

In case you have any queries regarding LambdaTest RBAC or need any additional information, please reach out at our 24/7 chat support or drop us a mail to [email protected].

Testsigma Integration With LambdaTest’s Cloud Based Selenium Grid


Testsigma is an unified codeless automation testing platform, designed and built for Agile and DevOps teams. With Testsigma, you can automate tests on Web, Mobile, and APIs; along with your team, with minimal or no coding skills required.

Testsigma now offers integration with LambdaTest to help you perform automated cross-browser testing taking advantage of the cloud-based Selenium Grid on over 2000 real browsers. LambdaTest Selenium Grid integration to Testsigma will help you run your Selenium automation scripts from Testsigma instance to our cloud-based Selenium Grid very easily. Lets see how.

How To Integrate LambdaTest With Testsigma


To integrate your LambdaTest account with the Testsigma instance, go to the Plugins options in Settings and enable the LambdaTest environment under Test Lab category.

The LambdaTest option will open and you will be needed to enter your LambdaTest credentials, including username and access key. Once you have entered the required information, click on Create button.

As soon as you click on the Create button, your LambdaTest credentials will be verified. Once the credentials verification is successful, the LambdaTest option will show a green coloured Enabled button, stating that the integration is successful, as shown in the image below.

How To Execute Tests On LambdaTest From Testsigma


Now that you have integrated LambdaTest as the Test Environment Provide, you can execute your tests on the LambdaTest’s cloud-based Selenium Grid. To do so:

  1. Select the project of your choice, and choose the test lab as LambdaTest, from the list of active test labs.

  2. A list of options will appear now, as shown in the image below, stating the type of environment upon which you want to run your test. You can select any as per your choice.

  3. Fill the details of the test environment configuration on which you want to run your test. For example, if you select the option as Web, then you need to select the browser, browser version, operating system, and resolution.

  4. Once done, click on Run Now, and the test execution will start immediately.

How To View Test Execution Details On LambdaTest Platform

As soon as you execute the test from Testsigma, the test execution will start on LambdaTest platform as well. To view the test execution details, open the Automation dashboard. You will see your test details on the top, as shown below:

Not only this, but you can also confirm the test environment configuration, view test execution video, console logs, network logs, exceptions, step by step screenshots, and much more. All you need to do is click on test build to open the Automation log view.


Kudos! Now you can deploy your codeless automation tests in a reliable & faster manner at scale, using LambdaTest integration with Testsigma, and perform automated cross browser testing with our cloud based online Selenium Grid. If you still have any questions, feel free to share them with us through our 24/7 chat support or by mailing to us on [email protected]. Happy testing! 🙂

YouTrack Integration


YouTrack is a bug tracking and project management tool developed by JetBrains. It allows you to create agile boards, use reports and Gantt charts, dashboards, and time tracking. With YouTrack, you can find issues easily based on autocomplete queries and manipulate them in batches, customize all problem attributes, and create custom workflows.

With LambdaTest and YouTrack integration, you can push bugs directly from LambdaTest to your YouTrack’s project. Also, capture screenshots, annotate bugs, and share them with your teammates and colleagues.

How To Integrate YouTrack With Your LambdaTest Account?


Step 1: Login to your LambdaTest account. To install integrations, you need to have admin or user level access.

Step 2: Go to ‘Integrations’ from the left menu bar. You will be routed to the integration page where you can find list of third-party applications.

Step 3: From the ‘Bug Tracker’ category, click on the ‘YouTrack’ block.

Note:: If you already have an existing LambdaTest integration with any project management tool then you will be asked to uninstall the existing LambdaTest integration.

Step 4: Enter your ‘YouTrack URL’ and ‘API Token’.

  • What is YouTrack URL?
  • YouTrack is the organization’s domain name on your YouTrack Projects. It is included in the URL.

  • What is an API Token?
  • An API token is required to authenticate a user’s identity from one server to another by retrieving client resources from the server where the connection is initiated. To ensure its security and data integrity, API tokens are important when an end user connects into an application via a two-step verification process.

Step 5: To get the API token, log in to your YouTrack account and navigate to Profile on the top-left.

Step 6: Click on the link that says ‘Update personal information and manage logins’.

Step 7: Select the ‘Authentication’ tab.

Step 8: Click on ‘New Token’.

Step 9: Enter the token name and click on ‘Create’.

Step 10: Your new token will be generated. Click on ‘Copy Token’.

Step 11: Enter the Youtrack Domain and copied API token in the provided field and then press ‘Install’.

You have successfully integrated YouTrack with your LambdaTest account. Visit the ‘Integrations’ again and you’ll notice a green check on YouTrack block under the category My Integrations.

Logging First Bug Through YouTrack Integration


For demonstration, we will log bugs while performing Real time testing.

Step 1: Select the Real Time Testing from the left menu.

Step 2: Enter the test URL, select browser, browser version, operating system and resolutions. Then press ‘START’.

Step 3: A new virtual machine will fire up where you can perform live interactive testing of websites & web apps for filing bugs. To file a bug, click on the Bug icon to capture a screenshot.

Step 4: Once the screenshot is captured, you can annotate any bugs or tasks by using in-built image editor tools. Then click on ‘Mark As Bug’.

Step 5: You will get a YouTrack ticket where you are required to fill up your bug details as per your requirement and then click on ‘Create Issue’.

  • You can select the Project.
  • You can choose the Board to manage your tasks.
  • You can select the Assignee of the bug or task.
  • You can specify the Title to your test.
  • You can provide the Description of the issue.
  • You can also choose Task type, Task Priority, Task State.

Your bug will be marked successfully.

Step 6: Visit your YouTrack agile board, you’ll notice your marked bugs and tasks.

Click on your Project, you’ll find all the test environment details along with captured screenshots.

Uninstalling The YouTrack Integration


Step 1: Login to your LambdaTest account. Visit Integrations and navigate to ‘My Integrations’.

Step 2: Click on ‘REMOVE’ adjacent to YouTrack block.

Your YouTrack integration will be removed successfully.

That’s all about YouTrack integration with LambdaTest. In case, you have any questions or want any further integration with your favorite integration tools, please feel free to reach us at our 24×7 Chat Support or email us at [email protected].
Happy testing!

Zebrunner Integration With LambdaTest’s Cloud Based Selenium Grid


Zebrunner is a modern test reporting and analytics tool which offers very comprehensive automated test results and analysis with the help of a smart AI-based failure classification system. Through Zebrunner, you can easily detect failures with the help of rich artifacts, such as video, screens, logs, etc., and fix issues faster.

Zebrunner now offers integration with LambdaTest to help you perform automated cross-browser testing taking advantage of the cloud-based Selenium Grid on over 2000 real browsers. LambdaTest Selenium Grid integration to Zebrunner will help you run your Selenium automation scripts from Zebrunner instance to our cloud-based Selenium Grid very easily. Lets see how.

How To Integrate LambdaTest With Zebrunner Instance


To integrate your LambdaTest account with the Zebrunner instance, go to the Integrations panel and activate the LambdaTest environment under Test Environment Provider category.

activate lambdatest

The LambdaTest option will open and you will be needed to enter your LambdaTest credentials, including Hub URL, username and access key. Once you have entered the required information, click on Save button.

As soon as you click on the Save button, your LambdaTest credentials will be verified. If the credentials verification fails, a red dot will appear against LambdaTest, else a green dot will appear stating that the integration is successful, as shown in the image below.

integration successful

How To Execute Tests On LambdaTest From Zebrunner


Now that you have integrated LambdaTest as the Test Environment Provide, you can execute your tests on the LambdaTest’s cloud-based Selenium Grid. To do so:

  1. Select the project of your choice, and choose the environment as LambdaTest, from the list of active test environment providers.

    select LambdaTest environment for project

  2. A list of options will appear now, as shown in the image below, stating the type of environment upon which you want to run your test. You can select any as per your choice.

  3. Fill the details of the test environment configuration on which you want to run your test. For example, if you select the option as Web, then you need to select the browser, browser version, operating system, and resolution.
    launch test

  4. Once done, click on Launch, and the test execution will start immediately.
    test started

How To View Test Execution Details On LambdaTest Platform

As soon as you execute the test from Zebrunner, the test execution will start on LambdaTest platform as well. To view the test execution details, open the Automation dashboard. You will see your test details on the top, as shown below:
test on lambdatest

Not only this, but you can also confirm the test environment configuration, view test execution video, console logs, network logs, exceptions, step by step screenshots, and much more. All you need to do is click on test build to open the Automation log view.
automation logs


Kudos! Now you can deploy your code in a reliable & faster manner at scale, using LambdaTest integration with Zebrunner, and perform automated cross browser testing with our cloud based online Selenium Grid. If you still have any questions, feel free to share them with us through our 24/7 chat support or by mailing to us on [email protected]. Happy testing! 🙂

Run Selenium Tests With Google Cloud CI


Google Cloud Platform is one of the market’s leading public cloud providers and offers a variety of management services. Google Cloud Build and Google Cloud Run are two Google Cloud services that use pipelines to automate builds and deployments.

Integrate your Selenium test suites with Google Cloud CI and perform automated cross-browser testing on online Selenium Grid over 2000+ real browser environments. With this integration, you can also perform local testing of locally or privately hosted projects and Parallel testing to cut short test execution cycles and achieve faster go-to-market delivery.

Prerequisites


Before integrating Google Cloud CI with LambdaTest, make sure you have the following things:

  1. A GitHub or a BitBucket repository. All the code samples in this documentation can be found at LambdaTest Google Cloud CI repository on GitHub .
  2. To integrate test suites with Google Cloud CI, you would need to set your LambdaTest username and access key in environment variables. You can get them from Automation Dashboard by clicking on the Key button from the top-right.
    • For Windows:

    • For Mac/Linux:

Integrating A GitHub Repository With Google Cloud CI


To integrate Google Cloud CI with LambdaTest, you will need to fork the above LambdaTest Google Cloud CI repository.

  1. Go to the Google Cloud CI console and select ‘Cloud Build’.
  2. Once you’re in the Cloud Build, click on ‘Triggers’.
  3. To use the trigger functionality, you will need to connect your GitHub repository to Google Cloud CI instance. Click on ‘Connect Repository’.

  4. Once you click on Connect Repository, you will need to complete the steps in order to connect your repository.

Running Single Test Via Google Cloud CI


  1. After connecting to the repository, click on ‘Create Trigger’.
    • Provide a Trigger name.
    • Select the repository’s source and then select the branch.
    • Under the ‘Configuration’, select Cloud Build configuration file (yaml or json).
    • In the ‘Advanced’ category, click on ‘Add Variable’.

      Enter your LambdaTest Username and Access Key in the provided field and then click on ‘Create’.
  2. Your trigger project will be created on the selected Google Cloud CI GitHub repository. To run the single test through Google Cloud CI, click on ‘Run’.
  3. A new build can be seen in the Google Cloud CI console. The current status of this build will be ‘Running’ or ‘Successful’.

    You can also view the detailed insights of your test execution on LambdaTest Automation dashboard.

Running Parallel Test Via Google Cloud CI


To run parallel tests on LambdaTest cloud, you will need to make minor tweaks in cloudbuild.yml file.

In the above YAML code, you need to add the following command to args.

Below is the screenshot of the above-executed parallel tests.

Running Local Test Via Google Cloud CI


To run local tests on LambdaTest cloud, you will need to make minor tweaks in cloudbuild.yml file.

Add the below command to args.

Below is the screenshot of the above-executed local tests.

That’s all! Ship your quality product faster using LambdaTest and Google Cloud CI integration. In case you have any queries for us, feel free to drop them at our 24*7 customer chat support or you can also mail us at [email protected]. Happy Testing!

Parallel Testing Of Locally Hosted Pages Using Load Balancing In LambdaTest Tunnel


Load Balancing feature allows you to perform parallel testing of your locally hosted or privately hosted website or web app on 2000+ real browsers through LambdaTest Tunnel. The Tunnels created under this feature will act as a single pool for the tests and thereby will help in performing parallel testing on the LambdaTest platform.

How To Activate Load Balancing In LambdaTest Tunnel?


The Load Balancing in LambdaTest Tunnel is achieved with the help of load balanced tunnel modifier, used as shown in the below syntax:

Now to activate the Load Balancing feature in the LambdaTest Tunnel, create more than one tunnel with the same name and Load Balancing tunnel modifier. It means that, we need to open more than one tunnel binary and use the below command in each of them:

To get your LambdaTest Username and Access Key, visit your LambdaTest automation dashboard and click on the “key” icon, present on the left to the help button, on the top right corner.

get LambdaTest username and access key

For example, in the below screenshot, you can see two tunnels activated in the Load Balanced mode, using the above syntax:

Activating-load-balanced-lambda-tunnel

Now when you will go to you LambdaTest dashboard, you will find both the tunnels active with same name, stating that the tunnels are load balanced.

Load-balanced-tunnels-activated

Parallel Testing Using Load Balanced LambdaTest Tunnel


After activating the load balanced tunnels, all you need to do is to pass the “tunnel” capability as true in your automation test script. This will automatically run your tests in parallel by taking advantage of the Load Balancing.

Please note that you do not need to set the “tunnelName” capability as the tunnel name will be automatically managed from active tunnels in your profile.

For example, here is the Automation Logs view of the test run using the Load Balancing feature of LambdaTest Tunnel.

Load-balancing-demo

As you can see, 10 tests have been executed in Parallel in 8.33 minutes due to the advantage of Load Balanced LambdaTest Tunnel, which otherwise would have taken much longer.

How To Stop The Active Load Balanced Tunnels?


You can stop the active load balanced LambdaTest Tunnels with the help of Tunnel sessions info. To do so, first you need to click on View All button in the Active Tunnel list, as shown below:

view-all-active-tunnels

Then in the Tunnel Sessions info, you can see all the active tunnels with their information, active state and a Stop button to stop the corresponding active tunnel.

Just press on this Stop button against the tunnel you want to stop, and it will end the tunnel session right away.

stop-button


That’s all! You can now successfully activate and use the Load Balancing feature of LambdaTest Tunnel, to test your locally hosted website in parallel. If you still have any questions, feel free to share them with us through our 24/7 chat support or by mailing to us on [email protected]. Happy testing! 🙂

Run Selenium Tests With NemoJS


NemoJS is an open-source NodeJS automation framework developed by PayPal. Nemo makes it easy to integrate Selenium automation into your NodeJS web projects.

This document will help you run Selenium automated tests with NemoJS on LambdaTest cloud Selenium Grid. You can run NemoJS automated test cases across 2000+ different browsers and operating systems.

Prerequisites


All the code samples in this documentation can be found in the NemoJS LambdaTest Repository on GitHub. You can either download or clone the repository to quickly run your tests.

Before starting running your Selenium tests with NemoJS, ensure you have the following things configured.

  1. Make sure you have NodeJS installed. You can install it from the official NodeJS website. You can also install NodeJS by running the following command in the terminal.
  2. Run the below command to download npm.
  3. To download NemoJS, run the following command in the terminal.
  4. To run your Selenium tests with NemoJS, you would need to set your LambdaTest username and access key in the environment variables. To get it, visit Automation Dashboard and click on the Key button from the top-right.
    • For Windows:

    • For Mac/Linux:

  5. Install the dependencies by executing the following command.
  6. Set the environment variables in nemo.config.js file with your LambdaTest Username and Access Key.

Running The Single Test Case With NemoJS


To run your single test case with NemoJS on LambdaTest, let’s understand our test case scenario, the below Nemo.js automation script will test a sample to-do list app. The code marks two list items as done, adds a list item, and then outputs the total number of pending items.

To run the single test, execute the below command in the terminal.

Running The Parallel Tests With NemoJS


LambdaTest Selenium Grid allows you to perform parallel testing across 2000+ browsers and OS to automate your several test cases simultaneously. You can execute a single test case across various browsers, or you can run multiple test case scenarios across the same browser but with different browser versions.

Below is the code sample for the Parallel tests. In this code, we will test our Sample to-do app in three browser versions and operating systems.

Now run the below command to run the parallel tests.

That’s all! You have successfully performed your Selenium tests with Nemo.js. In case you come across any doubts, feel free to reach out through our 24/7 chat support or you can also drop a mail to [email protected]. Happy testing!