GUI Functional Testing - Overview
A GUI Functional Test provides a means of testing your GUI's functionality via Selenium on the cloud, which in turn generates a robust report that will allow you to review how your test performed step-by-step, even providing a recorded video of your test as it executed in the engine's web browser!
This article is an overview of your test creation options that leads you to more details articles below.
- Create a Scriptless Test
- Create a Test By Uploading a Taurus YAML Script
- Create a Test from Your IDE
- Set Up Test Execution Settings: Location, Browser, Mock Service
- Duplicate, Delete, Move, or Rename a Functional Test
- What Are Test Suites and Test Cases?
Create a Scriptless Test
You as tester or subject matter expert can create a GUI Functional Test even without writing any code, by creating a "scriptless" test. This means you create and edit tests by dropping predefined actions and objects into a test scenario. (It's "scriptless" in that you don't have to write the script; BlazeMeter automatically generates the script behind the scenes!)
This approach relies on the provided Taurus Actions for GUI Functional Testing, and your custom Test Action Library. You can also use the BlazeMeter Chrome Extension to record a test and edit it in the scenario editor later.
For more details, refer to our guide on Creating Scriptless GUI Functional Tests.
Create a Test By Uploading a Taurus YAML Script
Another way how you as a tester can create a GUI Functional Test requires uploading your own Taurus YAML configuration files. All Selenium commands must be executed within said YAML file (as opposed to referencing an external Selenium script file). This is the simplest method for executing a BlazeGrid test.
You can either write your own YAML configuration file from scratch, or you can use the BlazeMeter Chrome Extension to automatically generate the file for you.
For more details, check out our guide on Creating a GUI Test by Uploading a YAML File.
Create a Test from Your IDE
If you as a developer prefer to execute a Selenium Java or Python script, you can do so by modifying your script to communicate with BlazeMeter, then execute the script from your local integrated development environment (IDE), which will in turn automatically create a BlazeGrid test on the cloud.
We have two guides to choose from:
Set Up Test Execution Settings
You can choose a public Cloud location, or a private location for test execution. The choice of location also determines which browsers are available. For more information, see Cloud vs Private Location and Get the Location Name.
For a test that has a location assigned, you can choose browser and browser version. For more information, see Supported browsers. Each test can be run in multiple browsers and multiple versions.
By default, and if no location is selected, the test runs in the latest Chrome browser.
- If you have created a private location that has custom browsers and versions configured, you can select additional browsers.
- For each choice of browser and version, you can choose to record a video of the test execution as part of the test report. By default, video recording is enabled.
- Mock Services Configuration:
If you have created a mock services configuration, you can assign it to this test.
Duplicate, Delete, Move, or Rename a Functional Test
For any test that you create, you have the option to duplicate, delete, rename the test, or move it to another project.
Follow these steps:
- Navigate to the Functional tab.
- Select a test from the Tests drop-down list.
- Click the Actions menu for the test.
- Select one of the actions from the menu:
- Duplicate Test
- Move Test
- Delete Test
- (Optional) Click the pen icon to rename the test.
What Are Test Suites and Test Cases?
On the Test Creation screen, you can optionally organize your tests into test suites. Here, we will clarify what is meant by "test cases" and "test suites".
A test case is a set of one or more steps. For example, the steps to navigate to a URL, fill out a form, and click a button may be organized into a single test case. In the example test report below, we have a test case named "Homepage" that consists of one step, which is navigating to the URL specified:
A test suite is a collection of test cases. You may have one or more test cases in a test suites. The same test case can be associated with several test suites. In the following example, the test case goes to the homepage again, only this time we have designated it as the second test case inside a test suite. In the screenshot, the test suites are named "BlazeDemo Website 1" and "BlazeDemo Website 2":
These report examples show that "pass" messages are highlighted in green and "fail" messages in red.
Restriction: Access to the Test Suite feature requires a Pro Level plan or above.