Skip to content

Commit 552374f

Browse files
committed
Removed yml front matter from docs
1 parent e3ee19f commit 552374f

22 files changed

+0
-114
lines changed

docs/Advanced Topics/ContinuousIntegration.md

-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,3 @@
1-
---
2-
layout: layout
3-
title: Continuous Integration
4-
---
5-
61
White drives the mouse and keyboard for it's automation, and only falls back to the automation API's when it can't use the mouse/keyboard. This simulates real world behavior more than using automation directly.
72
This means that White has to run on an UNLOCKED desktop.
83

docs/Advanced Topics/CustomUIItems.md

-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
---
2-
layout: layout
3-
title: Custom UI Items
4-
---
51
Fundamentally all UIItems are either elementary (Label, e.g. having no other item in it) or composed of other UI Items. In white there is in-built support for standard UIItems. These are called standard mainly because of their prevalent use and ready availability in development environments.
62
When we use "third party controls", this might not be enough. Even though these UI Items are still made up of elementary items and can be automated by finding them individually. But we might miss some abstraction while doing this. Also we need build a lot of things in these items ourselves which are already done in white for other items. This is where Custom UI Item would be useful.
73

docs/Advanced Topics/Localisation.md

-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
---
2-
layout: layout
3-
title: Localisation
4-
---
51
White uses text internally to find UIItems. These string differ based on locale. e.g. in Table(DataGrid) the header, row header etc, or scroll bars, are identified by some names given to them. These don't work in locales which are not english based. While doesn't provide all the locale values but allows you to configure these text.
62
In the app.config define sections as:
73

docs/Advanced Topics/MouseAndKeyboard.md

-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,3 @@
1-
---
2-
layout: layout
3-
title: Mouse and Keyboard
4-
---
5-
61
## Using keyboard/mouse directly
72
Ideally you don't need to use these directly but if you do want to use. If you do want to use it then please use window.Keyboard and window.Mouse instead on instantiating a new window. The different between these two is that the use of Keyboard.Instance gives you raw keyboard and any operation performed on it would not wait till the window is busy. You can call window.WaitForInputIdle as well.
83

docs/Advanced Topics/PositionBasedSearch.md

-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,3 @@
1-
---
2-
layout: layout
3-
title: Position Based Search
4-
---
5-
61
### Speed up performance by Position based search
72

83
Performance of finding UIItems (based on search criteria) is proportional to the number of items on a window. A UIItem is found by enumerating over all the controls in a window (at windows messages level, everything is a window, try spy++ to understand this better). Smaller the scope of faster would be search. Position based search is based on this idea.

docs/Advanced Topics/SearchDepth.md

-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,3 @@
1-
---
2-
layout: layout
3-
title: Controlling Search Depth
4-
---
5-
61
- UI Automation provides two approach for querying the UIAutomation tree of an automation element.
72
- Search on automation element tree: In this search the API user specifies the criteria and scope of the search. The scope is of two levels children or descendant. This is simpler API as the user doesn't need to match against every element.
83

docs/Advanced Topics/ThirdPartyControls.md

-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,3 @@
1-
---
2-
layout: layout
3-
title: Third Party Controls
4-
---
5-
61
White provides support for all the controls which comes with standard .NET libraries. This support is partially just abstraction over UIAutomation and window messages. So, in case of third party controls like DevExpress, PureComponents etc, there are no standard UIItem implementation in white which you can use out of the box. The reason being the automation element structure beneath is unique to each of them. These Custom UI Item can be plugged in to white.
72
While implementing these you might face issues. Some known issues and possible resolution is provided below. Soon we would have a sample for each of them available here:
83

docs/Advanced Topics/UIAv3.md

-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
---
2-
layout: layout
3-
title: UIA v3/COM Api
4-
---
51
White will soon be running against the [UIA COM Wrapper](https://github.com/JakeGinnivan/UIAComWrapper) which means that White can support and will expose UI patterns for Virtualisation, and also add support for WinRT applications.
62

73
# Breaking Changes

docs/Advanced Topics/Waiting.md

-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,3 @@
1-
---
2-
layout: layout
3-
title: Handling waiting in White
4-
---
5-
61
White strives to eliminate any need whatsoever for doing Thread.Sleep and retry in your test programs. So if you find yourself doing these things in your program, please use any one applicable options below. If you don't find it, please raise an issue.
72

83
1. When any action is performed white automatically waits till the window can respond again to next action. One of the thing white does during this is to call windowPattern.WaitForInputIdle on the parent window of the UI item on which the action is performed. In cases where the window would be closed as a result of the action performed, this call would throw exception internally, depending on timing of the call. The caller doesn't have to worry about this as this exception is trapped.

docs/Advanced Topics/index.md

-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1 @@
1-
---
2-
layout: layout
3-
title: Advanced Topics
4-
---
5-
61
If you would like to know more about how White works, or set it up on a build server this is the place for you

docs/ChangeLog.md

-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
---
2-
layout: layout
3-
title: Change Log
4-
order: 9
5-
---
6-
71
## Version 0.11.0
82
### Namespace Change
93
White Namespace changed from White.Core to TestStack.White

docs/Configuration.md

-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
---
2-
layout: layout
3-
title: Configuration
4-
order: 5
5-
---
6-
71
##NOTE: This section needs revisiting and is likely out of date
82

93
Configuration

docs/FAQ.md

-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
---
2-
layout: layout
3-
title: FAQ
4-
order: 10
5-
---
6-
71
1. **Would there be support for Web Application testing?**
82
Because there are already a lot of good tools which do this, developing it is not under consideration at this point of time. Look at Selenium, Sahi, Watir, Watin and Watij for testing web applications.
93

docs/GettingStarted.md

-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
---
2-
layout: layout
3-
title: Getting started with White
4-
order: 1
5-
---
6-
71
### Pre-requisites
82
.NET 4.0 framework
93

docs/Index.md

-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,3 @@
1-
---
2-
layout: layout
3-
title: White Home
4-
---
5-
61
White is a framework for automating rich client applications based on Win32, WinForms, WPF, Silverlight and SWT (Java) platforms. It is .NET based and does not require the use of any proprietary scripting languages. Tests/automation programs using White can be written with whatever .NET language, IDE and tools you are already using. White provides a consistent object-oriented API, hiding the complexity of Microsoft's UIAutomation library (on which White is based) and windows messages.
72

83
##How white works?

docs/Screen Objects/Index.md

-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,3 @@
1-
---
2-
layout: layout
3-
title: Screen Objects in White
4-
---
5-
61
**This is significant addition to white. This should allow one to design the tests better and get rid of repeated initialization of UIItems in the tests. Brings the concept of convention over configuration to functional testing**
72

83
TestStack.White provides the engine for automating windows applications. Programs written using Core expresses intention of tests are UI Controls level. TestStack.White's API is tries to keep the intent of the program very clear.

docs/Screen Objects/RefactoringToUseScreenObjects.md

-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
---
2-
layout: layout
3-
title: Refactoring to use Screen Objects
4-
order: 1
5-
---
6-
71
## Making Tests more Readable
82
Lets start with an example of which creates a customer.
93

docs/Screen Objects/ScreenRepository.md

-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
---
2-
layout: layout
3-
title: Screen Repository
4-
order: 3
5-
---
6-
71
Our hand written screen class:
82

93
public class CreateCustomerStep1Screen

docs/Screen Objects/ScreensUIItemsAndEntities.md

-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
---
2-
layout: layout
3-
title: Screens, UIItems and Entities
4-
---
51
Lets have another look closely at the CreateCustomerStep1Screen's FillAndNext method.
62

73
public virtual CreateCustomerStep2Screen FillAndNext(Customer customer)

docs/Screen Objects/TestEntities.md

-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,3 @@
1-
---
2-
layout: layout
3-
title: Test Entities
4-
order: 2
5-
---
61
White supports the concept of Entities in your tests. Entities represent a *thing* in your application. This might be a Customer, and your application might have a new Customer Screen.
72

83
At the moment the communication between screen and test is done by using strings. e.g.

docs/UIItems.md

-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
---
2-
layout: layout
3-
title: UI Items
4-
order: 2
5-
---
6-
71
## UIItem Identification
82
Managed UI applications have a mechanism for identifying controls by specifying them names. These names are available for finding controls on using UIAutomation API. Name property used while developing application show up as AutomationId when using UIA API.
93
Un-managed applications donot have such feature. In these applications the controls are usually identified by text (white terminology) (name in UIA terminology).

docs/Windows.md

-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
---
2-
layout: layout
3-
title: Working with Windows
4-
order: 3
5-
---
6-
71
## Getting window
82
### Application Windows
93
List<Window> windows = application.GetWindows(); //Returns a list of all main windows in belonging to an application. It doesn't return modal windows.

0 commit comments

Comments
 (0)