🖋️
QualityMate
  • QualityMate
  • Getting Started
    • Introduction
    • Why QualityMate
    • Architecture
    • Supported Web Browsers
    • Glossary
  • Components
    • UI Player
      • Basic Concepts
      • UiPlayer
      • MSTest Integration
      • Samples
        • QualityMate Sample Desktop
        • QualityMate Sample Web
        • QualityMate MSTest Integration Sample Desktop
        • QualityMate MSTest Integration Sample Web
        • QualityMate Integration with Test Frameworks
        • Web Authentication Sample
      • QualityMate Project Template
    • UI Recorder
      • Basic Concepts
      • Setting Up the Recorder
      • Validating an Element
      • Generating QualityMate Solution
  • Tools
    • File Comparators
    • Image Processor
    • Project Merger
    • Test Case Generator
      • Filters
      • Rename Recorded Controls
  • Basic Concepts
    • Page Object
      • Work Guide
    • Controls
      • Control Types
        • Generic Types
        • Desktop types
        • Web Types
        • WebMap types
          • Kendo PowerBuilder
          • Kendo WinForms
          • Kendo Silverlight
      • Interactions
        • SendKeys
        • Validate
    • Selectors
      • Selectors in Code
      • Default Selector
      • Shared Selector
      • Selectors Category
        • CSS Selector
        • XPath Selector
        • Image Selector
        • Frame Selector
      • Identifying Selector
        • Identify for Windows Desktop
        • Identify for Web
  • How to Guides
    • Setting Up the Configuration
      • Parameters
      • Context
      • Loading External Data
    • Awaiting for the Application
      • Busy Loaders
      • Retries
    • Defining Controls
      • Extending Controls
      • Control Slice
      • Control Collection
    • Logging on Tests
      • QualityMate Reports
      • Logging
  • Help
    • Best Practices
      • Environment
      • Tests
      • Page Objects
      • Validations
      • Interactions
      • Image Comparisons
    • Known Issues
    • Continuous Integration
      • Agents Session
    • Upgrading QualityMate
      • From version 7 to version 8
      • Previous Versions
      • How to switch from TestFeature to UiTest
    • VS Test
      • Command Line
      • Generate Reports
  • API
    • Control Interfaces
      • IButton
      • ICheckBox
      • IComboBox
      • IControl
      • IControlSlice
      • IDateTimePicker
      • IElement
      • IGrid
      • IGroupBox
      • ILabel
      • IListBox
      • IMenu
      • INumericUpDown
      • IPageObject
      • IProgressBar
      • IRadioButton
      • IRadioButtonGroup
      • ISplitButton
      • IStatusStrip
      • ITab
      • ITextBox
      • IToggleButton
      • IToolBar
      • ITreeView
    • Behavior
      • ICheckableControl
      • IList
      • ITextControl
    • Enums
      • ClickType
      • KeyModifiers
      • MouseButton
  • Changelog
    • Changelog
      • Version 8
      • Version 7
      • Version 6
      • Version 5
      • Version 4
      • Version 3
Powered by GitBook
On this page
  • When to use
  • How to use
  • UiConfigurationManager
  • Configuration Context Attribute

Was this helpful?

  1. How to Guides
  2. Setting Up the Configuration

Context

The context changes some configuration parameters while QualityMate is executing. That being said, a Context is a boundary in which QualityMate executes with a parameter-defined environment.

When to use

  • Add or change parameters to a portion of the code during a script execution.

How to use

  • UiConfigurationManager class can be used inside a using declaration to apply the parameters on a code block.

  • ConfigurationContextAttribute can be used to load a .runsettings file on methods and classes.

UiConfigurationManager

The UiConfigurationManager class is used to generate a new context with user-defined parameters to use in that context. Also, you can check the user-defined parameters through the GetSetting method.

Using the UiPlayerConfiguration class

Define a UiPlayerConfiguration that will hold the desired parameters of the context, for example:

    UiPlayerConfiguration mySettings = new UiPlayerConfiguration
    {
        BusyLoaderSelectors = new[] { ".black-screen", ".black-element", },
        StepTimeout = 10000,
    };

Use the UiConfigurationManager's CreateContext() inside a using declaration to apply the dictionary parameters on the code block; a .runsettings file path can be used instead.

    using (controller.Configuration.CreateContext(mySettings))
    {
        // Code
    }

Each context temporally overrides its specified settings on the UiConfigurationManager. Once a context has been disposed of, the overridden values will be restored to their older state.

Configuration Context Attribute

The ConfigurationContextAttribute can be used as metadata for classes and methods to define a .runsettings file path. This attribute will be loaded at runtime by UiTest and will apply the respective configuration.

Class attribute

    [ConfigurationContext("MyPath/MySettings.runsettings")]
    [TestClass]
    public class MyClass : UiTest
    {
        // Class code
    }

Method attribute

    [ConfigurationContext("MyPath/MySettings.runsettings")]
    [TestMethod]
    public void MyMethod()
    {
        // Method code
    }

The .runsettings file path location will be relative to the output folder

PreviousParametersNextLoading External Data

Last updated 3 years ago

Was this helpful?