The MuukTest portal will provide you the tools to manage, and edit tests; additionally, it will allow you to create tests automatically. The portal comprises sections such as Home, Tests, Executions, Help, and Settings.
The Home Section will allow you to check:
- Total Executions: The number of all the test executions you have done.
- Executions Passed: The number of executions that had succesful results.
- Executions Failed: The number of executions with unsuccesful results
- Executions Over Time: A graphic with comparing the passed and failed executions.
Excecutions Over Time graphic
- Tests: It contains the number of different tests you currently have on the platform.
- Avg. Duration: The average time it has taken to the platform to run the executions.
- Tests by MuukTest: The total number of tests MuukTest has created using the different variations you have indicated on the tests.
- Cloud Executions: The number of executions you have run on the cloud.
- Executions per Browser: A graphic comparing the executions you have run and the number of passed and failed executions on each browser.
- Failed Executions Over Time: A graphic that shows failed executions.
- Executions per Dimension: A graphic that shows the number of executions per dimension you have run and the passed and failed executions on each dimension.
- Most Failed Tests: graphic which shows which are the test cases that have failed the most.
Executions Per Dimension and Per Browser graphic
The Tests Section shows all the tests or test blocks you have created. This section has a table that can be sorted or filtered by a search.
This section displays sets of 10 tests per page, but you can customize it using the selection box at the bottom of the table.
Test list by default. There are 10 but you can change it.
The search bar at the top of the table, will allow you to filter which tests to display by showing just the ones that match the search bar content. You can write what you are searching for and the table will be updated to display just the tests that match with the search terms. The fields used to filter are: test id <<tag>>, name, description, hashtags and date.
A click on the menu icon on the right side of the search bar will open more options like Order by. The elements will be ordered by the option you select there. Select it again to invert the sort order.
The test view displays information for every test in your repository. You also have the option to see only the tests you have created by clicking on Show my tests on the top right of the screen.
How to show test that you have created, only works in Classic View
Information from test and options for them
This is an explanation of the information displayed for each test, and the options available for them.
Test portal overview
- Checkbox: The checkbox at the beginning of the row is used to execute operations on multiple tests (example, supports delete and cloud execution for multiple tests). If you mark the checkbox from one or more tests an operations bar will appear at the bottom of the screen; it will allow you to execute or delete multiple tests at once. Marking the checkbox will also allow you to edit the base URL of the selected tests.
Select more than one test by checkbox
- Last execution status: The color circle on the left side represents the status of the last execution. It will be green if the execution was successful or red if it failed. The ones without a circle have not been executed yet.
- Expand/Collapse button: The arrow button allows you to expand or collapse child tests from a parent test.
- ID: Identifier tag of the test. This one is unique for each test.
- Name: Name of the test given by the user.
- Hashtags: The hashtags that has been used in this test description.
- Date: The date of creation of the test.
- User: The name of the user who created the test case.
- Execute now: Executes the test on the MuukTest cloud servers. The button transitions to Queued, Running and Done state. Once it is executed the result will be displayed under the executions view. Executes on Mozilla Firefox by default.
On the right of the Execute Now button, there is a selector option where you can choose the web browser you want to use to execute the test. Actually supporting Mozilla Firefox or Google Chrome.
Exceute now button
- Actions: Set of options that help to manage tests. These options will be displayed only if the mouse is over a row from the table.
Possible actions for each test
- Cloud Execution: functionality to execute a test in a cloud server.
Action: Cloud Execution
- Clone: functionality to create an identical new test (clone) based on the selected test.
Action: Clone test
- Test Variation: Functionality that creates new tests based on existing tests. It analyzes the objects of the selected test and using testing techniques. MuukTest creates new tests with specific goals such as checking positive, negative path, boundary check, incorrect values, etc.
Methods to make a variation of a test
There are six different methods to create tests:
- Combinatorial: This method creates tests by making smart combinations that cover all the input objects combined with another input object at least once, giving a complete coverage of the application interactions.
- Error Guessing: Creates test variations that modify inputs with values that seek to discover common software development defects (example: blank spaces, negative numbers, etc).
- Empty forms: This option creates a test variation with empty inputs for each form in the test case.
- Field rules: This option creates test variations with inputs according to the rules you have previously established on Settings.
- Data driven: It allows you to upload a csv file with data you want to use to run tests.
- All: This option generates test variations with all the options above.
- Delete: Deletes the test. You cannot undo this operation.
Action: Delete a test
The tests that are created by cloning or applying variations on an existing test are child tests and are grouped under it. The arrow icon on the left side of the test id will expand or collapse those child tests.
Note: If you create variations or clones from a child test, it will be removed as a child and added to the root of tests list as a parent test, and it will contain the created tests as children.
MuukTests 3.0 incorporates Test Blocks. This feature groups a set of steps creating a block that can be reused within the steps of any test. Once you create a Test Block and add it into a step any change performed in the block will update the tests accordingly.
To view test blocks on your repository, select the tab Blocks on the Test view. Blocks can be executed on the cloud and deleted as tests do.
This section displays the steps of a specific test and provides test steps management functionalities. Furthermore, you can also edit the information of the test (name, description and hashtags) by just clicking on it.
In case you are running a test, which exercises dynamic frameworks such as React, then you can check the React optimized flag. This injects parameters needed for the script to successfully run.
Steps in a test
- Notes: Every step has the option to add a Step Note where you can put relevant information you found about the step.
- No: Shows the step number.
- Type: the value of the “type” property. (example: text, email, password, etc.).
- Action: combo box with the actions for the steps. The options are: none, click, assignment, mouseover, Upload file, Open tab, Close tab, Enter iframe and Exit iframe. NOTE: Enter iframe.
- Value: if the action was an assignment the value will be displayed.
- Url: the URL from where the object was saved.
- Delete: deletes the step in the test.
When you see the list with all steps form a test, you can manipulate the steps for the test and edit the test information like name, description and hashtags.
Edit test information
Note: If you edit the test, you should click the button “Update test” to save the changes.
Edit Test’s hashtags
For edit a hashtag, you need to press on Edit test, and then press on icon to edit hashtag. It will open a modal dialog and in this modal there will be a combo box that allows you to add multiple hashtags (that you have already created) and under the combo box, the current hashtag of the test will be listed. Those can be removed if desired. When you have finished the hashtag edition you need to click Save to keep the changes.
Editing test hashtags
When you see the steps list, you can edit a step clicking on Value and Edit Selector on Actions.
You can edit a Value from a test clicking on icon.
When you make a change, a button will be appear to Save changes and update test.
And, when you updated it, a message with the status is shown.
Step selectors are the identifier MuukTest uses to know what element to interact with the web application. Even though MuukTest suggests using SmartSelectors for updating such information. These may be edited manually.
Warning: Updating this value means that any test interacting with such an element will use the provided selector. Choosing a wrong selector will break any test referencing such an element.
Edit selector action
For edit a selector, you need to click on a button in Actions. When you click the button, a modal will be shown with information that can be changed.
Editing a selector
If you want to edit more things about selector, you can click on Advanced Settings to show more information.
Advanced settings for a selector
When you finish your edit, press on Save, and a advising message will be shown. If you sure about it, press Yes.
Message confirming changes
And, when you saved changes, you will see a message with status.
Note: Always, after finished editing you must click the Save button to keep the changes.
The Menu button displays 7 different options. you can see all different options below in an image.
This option allows you to create a database by uploading a csv file. You can also choose the number of variations you wish.
Data driven modal.
To create a new database you have to click on Select Database, this will open a new tab where you have to click on Create new Database, then click on Select file and choose the file you want to upload (file must have a csv extension) and write the database name. You also have the option to include headers on the database.
Create and upload a new database with a csv file
Finally you have to click on Upload to create the database.
Configuring JS Snippets
To create a new snippet you have to click on Create snippet, this will open a new tab where you have to enter the snippet's name on the box, a space where you should write your JS code. Once you have written it you can click the Verification radio button, after that you can choose the variable type you would like to use from the list box.
Creating a JS snippet
Once you have finished with your JS code you have to click on Save to save the JS snippet.
To add an existing snippet you should click on Add existing snippet, select a snippet from the list and select if you want to add it before test or after test.
Finally you should click on Add to complete the adding snippet process.
Adding snippet process
"Basic authentication is a simple authentication scheme built into the HTTP protocol. The client sends HTTP requests with the Authorization header that contains the word Basic word followed by a space and a base64-encoded string username:password."
Reference: ANON, Swagger, [online]
If you want to add a basic authentication you only have to click on Basic auth. button, below JS snippet button and enable the Basic authentication. After that you should enter the username and password. Finally click on Finish to complete the Basic authentication.
Enable Basic Auth
Create Test Block
Once you click Create Test Block button. It enables the interface to select the steps you want to reuse as a Test Block. Select as many steps you need and click Create block.
Creating a test block
This will open a Tab, where you will have to enter Test block name.
Creating a block
Finally you have to click 'Save block' to have the Test Block created.
By clicking on set timeouts, you can change the maximum time a step has to be completed. By default the timeout is on 60 seconds.
The smart selectors option on test view, lets you search for objects (Selectors) on the Test Steps and replace those that were available on test creation but now are not found.
This functionality will execute the test on the cloud and prompt the result for each step to the user. Once it finds some missing element, will display where the failure was detected and let you choose another object to replace it.
Executing a Smart Selector
Smart selectors search for possible replacements on the site analyzing diverse properties on the elements and choosing those with the higher possibility to replace the missing one.
Once the element is selected, the information for that object will be updated and the process will restart to search for another missing object. If there are no missing objects the process will prompt a test execution success message and no further steps will be needed.
Add Step / Add JS snippet / Test Block
If you need to add a step, a JS snippet or a test block into your existing test, you can click the “+” button under the Steps portal.
This opens a window letting you choose whether you want to add a step, JS snippet or a test block.
If you want to add a step, you can select an object from the list, assign an action and a value (if necessary).
Assign and action and value to add a step
You will have to choose from a JS Snippets List which contains the snippets you have entered before.
Also, you can add a Test Block from a list of test blocks you have created before.
List of Test Block
Finally you also have the option to add a checkpoint to any step to indicate if it should pass or fail.
Getting the element selector
Using a browser’s inspector tool is the best way to get the selector information. MuukTest uses the CSS path which is provided by Firefox. Hence the following steps refers to Firefox browser.
- Enable the Inspector element doing right click anywhere on the browser.
- Under the inspector tool window, identify the tag that displays the element . The element will be marked on the web browser view when the mouse is over the tag.
- Right click on that tag to display an Option menu. From that menu choose Copy > CSS Path, such action copies the CSS Path into your clipboard.
The CSS path contains the full DOM path separated by blank spaces and starting from html header to the last one which represents the selected element.
html body div#content.container.content div#main div.list-container div.list table.table tbody tr.list-row td.cell a.link
Based on the above example, the element selected to be replaced is a.link.
Handling anchors and ids
MuukTest uses the following sentence:
html.no-js.wf-museo-n5-active.ul.todo.ui-sortable li#task_726793 form#edit_task_726793.edit_task input#task_726793_check.check
- Each element is separated by a space
- The hashtag(#) represents an object id
- The first part is the tag type.
- After the dot are the class of the element
Using the last two elements from the obtained selector.
You can create a required selector, changing bold sentence:
html.no-js.wf-museo-n5-active.ul.todo.ui-sortable li#task_726793 form#edit_task_726793.edit_task input#task_726793_check.check
For this sentence:
MuukTest portal consolidates the tests executed either via CLI or in the cloud. It provides a list where you can see the results of each execution. MuukTest groups all tests executed within the execution and provides the overall result. It marks the tests passed as green and red if the test failed.
If you want to see details of each test executed, then click to each test which opens a step by step summary. In addition, when executing the test in the cloud MuukTest provides screenshots of each step.
Step by step for a test
By clicking on Export you have the option to download a zip with the images from the screenshots of every step on the execution, to download a PDF with the execution and steps summary or to export the execution to Jira.
On Scheduling you have the option to schedule the execution of the any test you want, you have to select the tests you want to run automatically. The date and time when you want to have the test executed and also the browser, dimension and/or location where you want to execute it. You also can assign a specific name to this schedule.
Scheduling a test
MuukTest maintenance feature proactively runs all tests that have been successfully executed, this creates a baseline which lets the platform identify potential changes. In case the test was modified, then a new execution must be performed in order to keep looking for changes.
If during the maintenance process any element used by a step is missing (example: a div had the class red but now it has changed to blue) then the element will be marked with a yellow exclamation mark icon. This affects any test using the same element. In addition, the test will be marked with a #objectWarning hashtag as well.
MuukTests suggests some elements that might fix the test. When an element is selected a screenshot of it will appear on the right. After clicking save we will run the test with the new element, if it fixes the test then it will be updated and the warnings will be removed.
If the desired element is not on the list of items we suggest, you can choose the option Other and type the selector. Once the process is complete the warnings will be removed.
The Help Section is to request our help if you have any problem or question. This form is composed by:
- Name: your name so we know who has the question/issue.
Email: your email so we can contact you.
- Subject: general theme of the question/problem.
- How can we help?: description about the problem.
In addition, there is a quick help button (“?” icon) available in all pages under the portal. This displays a window where you can specify a subject of the problem and details of it.
Under Settings you can see your user information, besides the option to generate or download your executor key. Such key is needed in order to download test scripts via CLI, REST API or Execute in Cloud.
Profile information from Classic View. Key only works on this view.
The first time, you will only be able to download the key; once created you can generate a new one (refresh) or download the existing one. Keep in mind that only one key is assigned to a user and once the key is refreshed the old one does not work anymore.
In addition, you could change your password by receiving an email with instructions.
You can set the default browser to use when executing tests on the cloud (by default tests are executed on Chrome) by selecting it on the default browser drop down and saving the change.
You can integrate MuukTest with your slack service using the Add to slack button. It is as easy as as clicking on the Add to Slack button and login to your Slack account.
This module allows you to invite other members to join your organization and collaborate within MuukTest testing platform. Everyone within the organization share tests and execution information.
Add the emails of the persons that you want to join you at MuuktTest and in the following minutes they will get an invitation email with a URL to register to MuukTest. Please check the spam in case the email has not been received. Once registered they will have access to your organization tests.
Invite a team of your organization
By default the maintenance is set to active and scheduled to run automatically every Sunday at 11pm. You can reschedule such activity or deactivate the feature at all.
Additionally, you can choose to execute maintenance immediately by clicking the Execute now button. Only one maintenance process can be executed at the time, this means that you need to wait until completion.
On settings, there´s also an option to add a database. The process to add a database is the same one as on the steps section.
This configuration is the same like Step section
Tags can be managed on the tags tab from the settings. Here you can add or remove tags to use on your tests, by clicking on the Add tag button to add tags or the red bin icon to delete them.
You can create a project adding multiple tests to it, you only have to click on Add project and it will open a new tab where you will have to fill the project name and add the tags of those tests that will be part of this project.
Adding a project for multiple test
Selecting a suggested tags
This section has the list of all the JS snippets that have been added and also it has a button to add a new JS snippet.
Adding a JS Snippet
The field rules function allows you to establish some rules on the inputs and run tests with them. There are two types of rules.
Adding a new Field Rules
The first one is the max-min characters rule where you define the minimum and maximum number of characters you will like to have on the test's inputs, MuukTest will enter a string of random characters larger or equal than the minimum and shorter or equal than the maximum.
Min -max characters
To create this field rule you have to click on Add field rule, fill the name of this rule, select the option Max-min characters and fill the minimum and maximum number of characters.
The second type is the Fixed format rule where you can establish the format the string on the test's inputs will have (it could include letters, numbers, symbols, etc.).
First, add a new field rule
To create this type of rule you have to click Add field rule, select the option Fixed Format and specify the format you want for the inputs.
Then, update it and add a fixed format
Note: Once you have specified how you want to create your rule you must click on 'Save', otherwise the rule will not be created.
If you have more questions, you can see our videos about our MuukTest.