Git Product home page Git Product logo

windowtester's Introduction

WindowTester Pro is a UI test generation tool for testing SWT and Swing Java applications. WindowTester Pro eliminates the need to manually create test cases to test GUIs by automating the process of GUI testing. Using WindowTester Pro, developers can easily create tests for every GUI they create. The tests generated by WindowTester Pro are standard JUnit tests thus they can be run within your Eclipse environment or they can be automated to run using Ant. Typically, tests are recorded on projects within your Eclipse environment.

windowtester's People

Contributors

keertip avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

windowtester's Issues

Patch - Add isCheckStyleBitSet() method

Add isCheckStyleBitSet() method to TreeItemLocator and TableItemLocator to 
check if the parent tree/table has the SWT.CHECK style bit set. This allows to 
only show the isChecked property in the inspector on trees/tables that actually 
have check boxes.

Also attached test for isCheckStyleBitSet() as a separate patch.

Original issue reported on code.google.com by [email protected] on 12 Jun 2012 at 11:23

Attachments:

Condition that always returns true

Hi
I've also found a code smell (possibly a bug).

Path: com.windowtester.swt.runtime/src/com/windowtester/runtime/swt/condition/eclipse/ActiveEditorCondition.java

 61                 public boolean test() {
 62                         IFile file = getActiveFile();
 63                         if (file == null)
 64                                 return false;
 65                         actualPath = file.getLocation();
 66                         return actualPath.equals(actualPath) == isActive;
 67                 }

In Line 66, "actualPath.equals(actualPath)" will always return true. It should be like this?

66                         return this.actualPath.equals(actualPath) == isActive;

Thanks!

Patch - Fix TreeItemLocator.isSelected(IUIContext ui)

This patch fixes the isSelected(IUIContext ui) method in TreeItemLocator. It 
now actually checks for the selected state instead of the checked state. It 
works in the same way as the isSelected(IUIContext ui) method in 
TableItemLocator. Therefore isSelected(Tree tree, TreeItem item) was added to 
abbot.tester.swt.TreeTester.

This also fixes the 
com.windowtester.test.locator.swt.TreeItemLocatorTest.testTreeItemSelection() 
test added in https://code.google.com/p/windowtester/issues/detail?id=3#c1

Original issue reported on code.google.com by [email protected] on 4 May 2012 at 4:23

Attachments:

Code review request (Tycho)

Purpose of code changes:
-Use Tycho to build WindowTester
-Fixed compile problems
-Fixed two GEF tests

Please note:
-I added a new parent project for every feature and one top level parent 
project.
As these are new projects I could not create a patch for them, but they are 
attached
in a zip file.
-Currently not all tests are included or run successfully when using the 
tycho-surefire plug-in, therefore the parameter "-DskipTests" should be used 
when calling "mvn clean install" or "mvn clean verify"
-This is a first step to establish a common build infrastructure for developing
WindowTester. Small adjustments will probably be needed in the future 
(versioning, tests, etc.).

After the review, I'll merge this branch into:
/trunk


Original issue reported on code.google.com by [email protected] on 10 May 2013 at 12:00

Attachments:

SWTKeyOperation needsShift for ASCII 60 wrong

If you try to insert text with enterText("<") windowTester always will enter 
">" - so this is not correct and the error can be found at this line:

if (keyCode == 58 || keyCode == 60 || keyCode == 62)
            return true;


keyCode 60 = < and needs no shifting 

So will easy to solve :)
As workaround you can use keyClick(((char)60)); this seems to work :)

Class: SWTKeyOperation
Method: bool needsShift(char keyCode)
Line: 246

Best Regards,
Falk

Original issue reported on code.google.com by [email protected] on 7 Mar 2013 at 1:40

Is 64 bit windowstester support is there for windows

hello,

I tried to run the ui test cases in 64 bit windows 7  machine with 64 bit java 
jre and 64-bit eclipse platform.

I am getting the below exception while running the test cases.

 [java] com.windowtester.runtime.swt.internal.widgets.SWTUIException: Exception occurred on the SWT UI Thread
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor.run(SWTUIExecutor.ja
va:101)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.runtime.swt.internal.widgets.DisplayReference.execute(DisplayRe
ference.java:121)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.runtime.swt.internal.widgets.DisplayReference.execute(DisplayRe
ference.java:100)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.runtime.swt.internal.widgets.DecorationsReference.getMenuBar(De
corationsReference.java:32)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.runtime.swt.locator.MenuItemLocator.click(MenuItemLocator.java:
77)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.internal.runtime.selector.ClickHelper.doClick(ClickHelper.java:
172)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.internal.runtime.selector.ClickHelper.click(ClickHelper.java:59
)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.internal.runtime.UIContextCommon.click(UIContextCommon.java:137
)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.runtime.swt.internal.UIContextSWT.click(UIContextSWT.java:325)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.internal.runtime.UIContextCommon.click(UIContextCommon.java:130
)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.runtime.swt.internal.UIContextSWT.click(UIContextSWT.java:333)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.internal.runtime.UIContextCommon.click(UIContextCommon.java:123
)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.runtime.swt.internal.UIContextSWT.click(UIContextSWT.java:295)
build   12-Jul-2012 15:30:34         [java]     at 
com.bosch.blueworx.lwm.ui.preferences.ArtifactSelectionPreferencePageTest.test_p
references_available(ArtifactSelectionPreferencePageTest.java:48)
build   12-Jul-2012 15:30:34         [java]     at 
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
build   12-Jul-2012 15:30:34         [java]     at 
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
build   12-Jul-2012 15:30:34         [java]     at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
build   12-Jul-2012 15:30:34         [java]     at 
java.lang.reflect.Method.invoke(Unknown Source)
build   12-Jul-2012 15:30:34         [java]     at 
junit.framework.TestCase.runTest(TestCase.java:168)
build   12-Jul-2012 15:30:34         [java]     at 
junit.framework.TestCase.runBare(TestCase.java:134)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.runtime.common.UITestCaseCommon.access$0(UITestCaseCommon.java:
1)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.runtime.common.UITestCaseCommon$2.run(UITestCaseCommon.java:130
)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.runtime.common.UITestCaseCommon$3.run(UITestCaseCommon.java:151
)
build   12-Jul-2012 15:30:34         [java]     at 
com.windowtester.internal.runtime.junit.core.SequenceRunner$1.run(SequenceRunner
.java:40)
build   12-Jul-2012 15:30:34         [java] Caused by: java.lang.RuntimeException: 
Failed to create widget reference for instance of org.eclipse.swt.widgets.Menu
build   12-Jul-2012 15:30:34         [java]    WindowTester: 201108222321 - 
win32,win32,x86_64

could you please help me out whether 64 bit support available for Windows 
machine or not

Original issue reported on code.google.com by [email protected] on 12 Jul 2012 at 1:46

TreeItemLocator can't deal with multiple items that have the same name

TreeItemLocator can't deal with multiple items that have the same name. Same 
for TreeCellLocator which depends on TreeItemLocator.
ui.click(new 
TreeItemLocator("GSServerApplication/Assembly/Resources/MSFTranslators/MSFTransl
ator/JVMParameter",2,new SWTWidgetLocator(Tree.class, new 
SWTWidgetLocator(CTabFolder.class))));
Steps to reproduce-
If the Tree Contains the Tree Items with the same name, Tree Items Locator is 
not able to Identify them. 
For Example i want to click on the 2nd JVMParameter value 
  <JVMParameter>-client</JVMParameter>  
          <JVMParameter>-d64</JVMParameter>  
          <JVMParameter>-Xmx192m</JVMParameter>    

Exception:
com.windowtester.runtime.MultipleWidgetsFoundException: Multiple tree items 
found for 'JVMParameter' in 
name
JVMParameter
JVMParameter
JVMParameter
    at com.windowtester.runtime.swt.internal.drivers.TreeDriver.getNextTreeItem(TreeDriver.java:143)

What is the expected output? What do you see instead?
TreeItemLocator should be able to locate the Items by Index.

What version of the product are you using? On what operating system?
Windows 7, Eclipse Helios, 3.5

Please provide any additional information below.

Original issue reported on code.google.com by [email protected] on 22 Feb 2013 at 4:47

  • Merged into: #17

Attachments:

Code review request

Purpose of code changes on this branch:
-Mostly small convenience changes like typos, unused imports, fixed 
build.properties, etc
-This changes have been in the queue for a while and I want to get them in 
before
committing other (bigger) changes

After the review, I'll merge this branch into:
/trunk


Original issue reported on code.google.com by [email protected] on 24 Feb 2013 at 1:22

Attachments:

Unable to scroll and change the values in Form which are not visible to Windowtester.

What steps will reproduce the problem?
1. Create a Form widget in the composite. 
2. Form contains lots of fields like Radio button and Text Field etc.
3. Try to change the values of the fields which are not visible to the 
WindoTester.
4. WindowTester is not Scrolling to the point and not able to change the values 
of those fields.

My Form looks like --
Location: 
//Shell/-1//Composite/5//Composite/0//Composite/32//Composite/0//Composite/0//CT
abFolder/0//Composite/1//Composite/0//ScrolledComposite/1//Composite/0//Composit
e/0//RadioPropertyWidget/1

Layout Information: 
RadioPropertyWidget {}
    Style: LEFT_TO_RIGHT 
    Layout Data: GridData {horizontalAlignment=SWT.FILL grabExcessHorizontalSpace=true verticalAlignment=SWT.FILL grabExcessVerticalSpace=true}
    Bounds: Rectangle {450, 0, 636, 67}

What is the expected output? What do you see instead?
It Is expected that WondowTester should scroll and change the values Which are 
not Visible.

What version of the product are you using? On what operating system?
Window 7,32 bit
I am using http://dl.google.com/eclipse/inst/windowtester/latest/3.6
Version of Window Tester

Please provide any additional information below.

Original issue reported on code.google.com by [email protected] on 18 Feb 2013 at 5:13

Attachments:

Impossible to click twice in an "off-screen" widget

What steps will reproduce the problem?
1. Create a emf diagram with some widget inside
2. Move the widget so you need to scroll to be able to click on it
3. use windows tester to click on it. (using widgetLocator) 
4. Use windows tester to click on it again (using widgetLocator)

Expected Output : The widget is clicked twice
Instead : The widget is clicked, and then, the second click is out of the 
widget. 

It seems that the click happen at the coordonates of the widget relatively to 
the visible part of the schema(after the first click), but the click is 
effectively done at these coordonate relatively to the top left corner of the 
diagram.

What version of the product are you using? On what operating system?


Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 26 Mar 2013 at 9:42

Locating a widget providing one arbitrary ancestor, the widgets index and its type

This is a feature request for a new Locator, see: 
https://groups.google.com/forum/?fromgroups=#!topic/windowtester-pro/-V7MnZjiXeA
[1-25]

I am looking for a built-in way to to locate a widget with a specific ancestor.
I cannot access the direct parent though, which is a sub-type of SWT Composite, 
and for several reasons I don't want to use a NamedWidgetLocator.
Also, there is an arbitrary number of widgets of that type in the active 
context.

To solve this, I implemented a locator that works just like the 
SWTWidgetLocator with this constructor:
SWTWidgetLocator(Class<?> cls, int index, SWTWidgetLocator parent)
But instead of parent only, it also works with the grantparent or any other 
ancestor that can be wrapped in an ISWTWidgetReference, as well.

Additionally to solving the problem above, this locator can also lead to 
smaller and more robust tests because stacking several layers of 
SWTWidgetLocators to locate a single child-Composite is no longer necessary.

My custom locator is full of "Discouraged access"-warnings, so I hope that it 
will be included in the next windowtester release.
I tested it with several widgets, with and without index, but if something 
important is missing or the patch is not in line with your codinge guidelines, 
please let me know and I'll fix it.
Also, if there is an alternative solution to my problem, please let me know.

Cheers
Max

Original issue reported on code.google.com by [email protected] on 21 Aug 2012 at 11:37

Attachments:

Command line arguments -user and -password are silently deleted

Hi,

thanks for the excellent tool. Our application uses command line parameters 
"-user" and "-password" with user name and password options. When we start our 
application with window tester, those two parameters along with the options 
seems to be swallowed by the test launcher application. I did not found any 
documentation mentioning this, is it a bug?

Workaround: use different names for those options

WindowTester 6.0.

Thank you, Jan

Original issue reported on code.google.com by [email protected] on 7 Feb 2013 at 7:56

windowstester pro in E4 application

windows tester pro is running fine in E3 application. if tried same code in the E4 application, I am getting the following error. Please help me how to run windowstester in E4
java.lang.NoClassDefFoundError: org/eclipse/osgi/baseadaptor/loader/BaseClassLoader
at com.windowtester.internal.runtime.bundle.BundleResolver.bundleForClass(BundleResolver.java:18)
at com.windowtester.internal.runtime.bundle.BundleResolver.bundleNameForClass(BundleResolver.java:30)
at com.windowtester.internal.runtime.bundle.BundleClassReference.forBundleClass(BundleClassReference.java:25)
at com.windowtester.internal.runtime.ClassReference.forBundleClass(ClassReference.java:16)
at com.windowtester.runtime.WidgetLocator.(WidgetLocator.java:76)
at com.windowtester.runtime.WidgetLocator.(WidgetLocator.java:105)
at com.windowtester.runtime.swt.locator.SWTWidgetLocator.(SWTWidgetLocator.java:159)
at com.windowtester.runtime.swt.locator.MenuItemLocator.(MenuItemLocator.java:65)
at com.windowtester.runtime.swt.locator.MenuItemLocator.(MenuItemLocator.java:56)
at com.bosch.bdxeditor.abstracts.AbstractTestAction.loadBDXFiles(AbstractTestAction.java:39)
at com.bosch.bdxeditor.action.BackwardactionTest.testBackwardAction(BackwardactionTest.java:30)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at junit.framework.TestCase.runTest(TestCase.java:176)
at junit.framework.TestCase.runBare(TestCase.java:141)
at com.windowtester.runtime.common.UITestCaseCommon.access$0(UITestCaseCommon.java:1)
at com.windowtester.runtime.common.UITestCaseCommon$2.run(UITestCaseCommon.java:130)
at com.windowtester.runtime.common.UITestCaseCommon$3.run(UITestCaseCommon.java:151)
at com.windowtester.internal.runtime.junit.core.SequenceRunner$1.run(SequenceRunner.java:40)
Caused by: java.lang.ClassNotFoundException: org.eclipse.osgi.baseadaptor.loader.BaseClassLoader cannot be found by com.windowtester.runtime_6.0.0.r36x201009131510
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:439)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:352)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:344)
at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:160)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 21 more

Security Policy violation Binary Artifacts

This issue was automatically created by Allstar.

Security Policy Violation
Project is out of compliance with Binary Artifacts policy: binaries present in source code

Rule Description
Binary Artifacts are an increased security risk in your repository. Binary artifacts cannot be reviewed, allowing the introduction of possibly obsolete or maliciously subverted executables. For more information see the Security Scorecards Documentation for Binary Artifacts.

Remediation Steps
To remediate, remove the generated executable artifacts from the repository.

First 10 Artifacts Found

  • com.windowtester.eclipse.help/download-unused/ContactManager_v1.0.0.exe
  • com.windowtester.example.contactmanager.swing/lib/AbsoluteLayout.jar
  • com.windowtester.runtime/abbot/lib/bsh.jar
  • com.windowtester.runtime/abbot/lib/gnu-regexp.jar
  • com.windowtester.runtime/abbot/lib/jdom.jar
  • com.windowtester.runtime/abbot/lib/junit.jar
  • com.windowtester.runtime/abbot/lib/xml-apis.jar
  • com.windowtester.swing.recorder/abbot/lib/gnu-regexp.jar
  • com.windowtester.swing.recorder/abbot/lib/jdom.jar
  • com.windowtester.swing.recorder/abbot/lib/xml-apis.jar
  • Run a Scorecards scan to see full list.

Additional Information
This policy is drawn from Security Scorecards, which is a tool that scores a project's adherence to security best practices. You may wish to run a Scorecards scan directly on this repository for more details.


Allstar has been installed on all Google managed GitHub orgs. Policies are gradually being rolled out and enforced by the GOSST and OSPO teams. Learn more at http://go/allstar

This issue will auto resolve when the policy is in compliance.

Issue created by Allstar. See https://github.com/ossf/allstar/ for more information. For questions specific to the repository, please contact the owner or maintainer.

WT does not support the SWT Slider widget

What steps will reproduce the problem?
1. Create a view with a Slider widget
2. Write a WT test that opens this view
3. You get this: Failed to create widget reference for instance of 
org.eclipse.swt.widgets.Slider

What is the expected output? What do you see instead?
Expected: WT should support the slider widget, getSelection(), getMaximum() and 
getMinimum().
Actual:
com.windowtester.runtime.swt.internal.widgets.SWTUIException: Exception 
occurred on the SWT UI Thread
    at com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor.run(SWTUIExecutor.java:111)
    at com.windowtester.runtime.swt.internal.widgets.DisplayReference.execute(DisplayReference.java:131)
    at com.windowtester.runtime.swt.internal.widgets.DisplayReference.execute(DisplayReference.java:110)
    at com.windowtester.runtime.swt.internal.widgets.finder.SWTWidgetFinder.doFindAll(SWTWidgetFinder.java:116)
    at com.windowtester.runtime.swt.internal.widgets.finder.SWTWidgetFinder.findAll(SWTWidgetFinder.java:110)
    at com.windowtester.runtime.swt.condition.shell.ShellDisposedCondition.test(ShellDisposedCondition.java:63)
    at com.windowtester.internal.runtime.condition.ConditionMonitor.test(ConditionMonitor.java:186)
    at com.windowtester.runtime.swt.internal.UIContextSWT.wait(UIContextSWT.java:818)
    at com.windowtester.runtime.swt.internal.UIContextSWT.wait(UIContextSWT.java:804)
    at com.windowtester.runtime.swt.internal.UIContextSWT.wait(UIContextSWT.java:797)
    at com.asolutions.slidertest.windowtester.SliderTestWindowTester.openTheView(SliderTestWindowTester.java:74)
    at com.asolutions.slidertest.windowtester.SliderTestWindowTester.testSliderDoesNotThrowException(SliderTestWindowTester.java:53)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at junit.framework.TestCase.runTest(TestCase.java:168)
    at junit.framework.TestCase.runBare(TestCase.java:134)
    at com.windowtester.runtime.common.UITestCaseCommon.access$0(UITestCaseCommon.java:1)
    at com.windowtester.runtime.common.UITestCaseCommon$2.run(UITestCaseCommon.java:140)
    at com.windowtester.runtime.common.UITestCaseCommon$3.run(UITestCaseCommon.java:161)
    at com.windowtester.internal.runtime.junit.core.SequenceRunner$1.run(SequenceRunner.java:50)
Caused by: com.windowtester.runtime.swt.internal.widgets.SWTUIException: 
Exception occurred on the SWT UI Thread
    at com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor.run(SWTUIExecutor.java:111)
    at com.windowtester.runtime.swt.internal.widgets.DisplayReference.execute(DisplayReference.java:131)
    at com.windowtester.runtime.swt.internal.widgets.DisplayReference.execute(DisplayReference.java:110)
    at com.windowtester.runtime.swt.internal.widgets.CompositeReference.getChildControls(CompositeReference.java:32)
    at com.windowtester.runtime.swt.internal.widgets.CompositeReference.setChildren(CompositeReference.java:41)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference$1.call(SWTWidgetReference.java:121)
    at com.windowtester.runtime.swt.internal.SWTUtils.safeExec(SWTUtils.java:68)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.getChildren(SWTWidgetReference.java:118)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.accept(SWTWidgetReference.java:306)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitIfNotNull(SWTWidgetReference.java:313)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitAll(SWTWidgetReference.java:319)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.accept(SWTWidgetReference.java:306)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitIfNotNull(SWTWidgetReference.java:313)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitAll(SWTWidgetReference.java:319)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.accept(SWTWidgetReference.java:306)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitIfNotNull(SWTWidgetReference.java:313)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitAll(SWTWidgetReference.java:319)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.accept(SWTWidgetReference.java:306)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitIfNotNull(SWTWidgetReference.java:313)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.visitAll(SWTWidgetReference.java:319)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.accept(SWTWidgetReference.java:306)
    at com.windowtester.runtime.swt.internal.widgets.DisplayReference.accept(DisplayReference.java:102)
    at com.windowtester.runtime.swt.internal.widgets.finder.MatchCollector.findMatchesIn(MatchCollector.java:65)
    at com.windowtester.runtime.swt.internal.widgets.DisplayReference.findWidgets(DisplayReference.java:97)
    at com.windowtester.runtime.swt.internal.widgets.finder.SWTWidgetFinder$1.call(SWTWidgetFinder.java:122)
    at com.windowtester.runtime.swt.internal.widgets.finder.SWTWidgetFinder$1.call(SWTWidgetFinder.java:1)
    at com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor.execute(SWTUIExecutor.java:142)
    at com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor.access$0(SWTUIExecutor.java:140)
    at com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor$1.run(SWTUIExecutor.java:101)
    at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
    at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
    at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3563)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3212)
    at com.windowtester.runtime.swt.internal.junit.SWTExecutionMonitor.doWaitForFinish(SWTExecutionMonitor.java:161)
    at com.windowtester.internal.runtime.junit.core.AbstractExecutionMonitor.waitUntilFinished(AbstractExecutionMonitor.java:215)
    at com.windowtester.internal.runtime.junit.core.SequenceRunner.waitUntilFinished(SequenceRunner.java:79)
    at com.windowtester.internal.runtime.junit.core.SequenceRunner.exec(SequenceRunner.java:63)
    at com.windowtester.runtime.common.UITestCaseCommon.runUITest(UITestCaseCommon.java:157)
    at com.windowtester.runtime.common.UITestCaseCommon.runBare(UITestCaseCommon.java:138)
    at junit.framework.TestResult$1.protect(TestResult.java:110)
    at junit.framework.TestResult.runProtected(TestResult.java:128)
    at junit.framework.TestResult.run(TestResult.java:113)
    at junit.framework.TestCase.run(TestCase.java:124)
    at junit.framework.TestSuite.runTest(TestSuite.java:243)
    at junit.framework.TestSuite.run(TestSuite.java:238)
    at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
    at org.eclipse.pde.internal.junit.runtime.RemotePluginTestRunner.main(RemotePluginTestRunner.java:62)
    at org.eclipse.pde.internal.junit.runtime.PlatformUITestHarness$1.run(PlatformUITestHarness.java:47)
    at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
    at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
    at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3563)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3212)
    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)
    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
    at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
    at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
    at org.eclipse.pde.internal.junit.runtime.NonUIThreadTestApplication.runApp(NonUIThreadTestApplication.java:54)
    at org.eclipse.pde.internal.junit.runtime.UITestApplication.runApp(UITestApplication.java:41)
    at org.eclipse.pde.internal.junit.runtime.NonUIThreadTestApplication.start(NonUIThreadTestApplication.java:48)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
Caused by: java.lang.RuntimeException: Failed to create widget reference for 
instance of org.eclipse.swt.widgets.Slider
   WindowTester: ${build_num} - linux,gtk,x86
   factory: com.windowtester.runtime.swt.internal.widgets.linux.gtk.x86.WTRuntimeFactorySWT_linux_gtk_x86@30e4a7
    at com.windowtester.runtime.internal.factory.WTRuntimeManager.createReference(WTRuntimeManager.java:105)
    at com.windowtester.runtime.internal.factory.WTRuntimeManager.asReference(WTRuntimeManager.java:46)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.forWidget(SWTWidgetReference.java:325)
    at com.windowtester.runtime.swt.internal.widgets.SWTWidgetReference.asControlReferences(SWTWidgetReference.java:244)
    at com.windowtester.runtime.swt.internal.widgets.CompositeReference$1.call(CompositeReference.java:34)
    at com.windowtester.runtime.swt.internal.widgets.CompositeReference$1.call(CompositeReference.java:1)
    at com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor.execute(SWTUIExecutor.java:142)
    at com.windowtester.runtime.swt.internal.widgets.SWTUIExecutor.run(SWTUIExecutor.java:97)
    ... 80 more



What version of the product are you using? On what operating system?
6.0.0, trunk
WinXP, Win7 64, Ubuntu 64

Please provide any additional information below.
I have attached a zip file with code to reproduce the issue as well as a patch 
file to add support for the SWT Slider widget.  

Original issue reported on code.google.com by [email protected] on 21 Aug 2012 at 3:43

Attachments:

Code review request - Patches for tests

Purpose of code changes:

-Fixed RecorderLaunchConfigTest
-Removed license and code coverage tests (these components are not included 
anymore)
-Fixed NewAPIScreenCaptureTest (works now on windows platform, but there is 
still an issue with linux)
-Clean up code (remove unused imports, replace deprecated ui.pause() methods)

After the review, I'll merge this branch into:
/trunk


Regards,

Fred

Original issue reported on code.google.com by [email protected] on 7 Jan 2013 at 1:00

Attachments:

FilteredTreeMatcher could not resolve his parent correctly

What steps will reproduce the problem?
1. Use FilteredTreeItemLocator with a parent
2. Add some element between TreeItem and FilteredTree 

This is our structure in the program which results in not finding the widget:

SomeView$6 {}<HC|17982827>
  XFilteredTree {}<HC|12606869>
    Composite {}<HC|10618321>
        Text {}<HC|24849305>
    Composite {}<HC|19658581>
        Tree {}<HC|23815485>
         Menu {}<HC|29596937>
         ScrollBar {}<HC|10747063>
         ScrollBar {}<HC|2380731>
         TreeItem {SomeElement}<HC|4516542>
          TreeItem {SomeSecondElement}<HC|9402810>
         [Text {}<HC|25016238>]->(invisible)
         [CCombo {}<HC|10889280>]->(invisible)
         [Text {}<HC|10272673>]->(invisible)

I thought the FilteredTreeItemLocator would match if I do it this way:

ui.click(new FilteredTreeItemLocator("SomeElement/SomeSecondElement",new 
ViewLocator("SomeView")));

But could not resolve the parent correctly so i changed some behavior in 
matching - see the diffs attached.

Maybe there is a better way - if so let me know :) 


Original issue reported on code.google.com by [email protected] on 23 Nov 2012 at 12:28

Attachments:

A suspicious use of an incrementer in for loop

Hi

I've found a suspicious use of an incrementer in the recent snapshot.
(Path: com.windowtester.swt.runtime/src/com/windowtester/runtime/swt/internal/finder/eclipse/views/ViewExplorer.java)

In Line 57, should views[i] be views[j]? I have no idea if categories.length is same as views.length so just report the issue.

Thanks!

53                 for (int i = 0; i < categories.length; i++) {
 54                         IViewCategory category = categories[i];
 55                         IViewDescriptor[] views = category.getViews();
 56                         for (int j = 0; j < views.length; j++) {
 57                                 IViewDescriptor candidateView = views[i];
 58                                 if (view == candidateView)
 59                                         return category.getLabel();
 60                         }
 61                 }

Not able to select specific row from ktable

What steps will reproduce the problem?
1. create a KTable having multiple rows and multiple columns
2. select a particular row from KTable by selecting particular field value 
present in a specific row.

What is the expected output? What do you see instead?
it should select a particular row which is done using TableCellLocator for swt 
table but not able to do for ktable. Instead it selects row using XYLocator 
which is not the desired way to select a row from table.

What version of the product are you using? On what operating system?
windowtester version 6 and window XP 32 bit

Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 25 Jan 2013 at 10:28

Exception in Recorder View on Eclipse 3.8

On Eclipse 3.8 when a recording session is finished, Recording fails to show 
its contents due to the exception attached.  This is a showstopper for using 
Windowtester on 3.8

I have added a patch that catches and logs any exception from 
ISessionListeners, so that the subsequent call stack is not affected anymore.  
Why the concrete exception occurs in 
IWorkbenchSiteProgressService.decrementBusy() is not clear to me.  Apparently 
ISessionListener.ended() is called more often than ISessionListener.started().

Used IDE: Eclipse SDK 3.8M7 from 
http://download.eclipse.org/eclipse/downloads/drops/S-3.8M7-201205022000/.

Original issue reported on code.google.com by [email protected] on 14 May 2012 at 11:54

Attachments:

Support x86_64 on Linux

Currently the windowtester runtime does not support x86_64 on linux. 

Since we want to test an application whose target platform on Linux is only 
x86_64 this is mandatory for us in order to use windowtester.

Original issue reported on code.google.com by [email protected] on 16 Mar 2012 at 5:13

New Locator StyledTextLocator

As mentioned in the google group, it is needed for locating standard eclipse 
StyledText.class - so that you can also get access of the content.

I have created a simple one for first - it has the same structure as 
TextLocator.

See the attached file.

Regards,
Falk


Original issue reported on code.google.com by [email protected] on 9 Apr 2013 at 8:53

Attachments:

MultipleWidgetFoundException within TreeItemDriver

What steps will reproduce the problem?
1. Make a Tree with a TreeItem which has the same Name and Value
2. Write a test to select or locate this TreeItem
3. You will get the above mentioned exception

TreeItemDriver throws this exception if he found out, that a string appears in 
2 Items but there is no check if this widget/item is the same so he throws a 
MultipleWidgetFoundException

See the code line:
if (found == null) {
   found = items[row];
}
else
 throw new MultipleWidgetsFoundException("Multiple tree items found for \'" +nodeText
    + "\' in " + getAllItemText(textForItems));


I made little changes and would say this is a bug in WindowTester. 
Patch is attached.

Best regards,
Falk

Original issue reported on code.google.com by [email protected] on 18 Jan 2013 at 1:31

Attachments:

When recording widget is recognized...but not during the playback...

Hello everyone,

I have no idea what is going on...but widget(s) get recognized and recorded 
without problems...but when I playback the script it fails to find some of the 
widgets. How can I fix the problem?

The widget is recognized as (the path is modified):

ui.click(new CComboItemLocator("All Promotions", new ViewLocator(
    "com........views.SearchView")));

During playback I get:

com.windowtester.runtime.WidgetNotFoundException: Widget NOT Found:
CComboItemLocator("All Promotions")
    at com.windowtester.runtime.swt.internal.UIContextSWT.find(UIContextSWT.java:612)
    at com.windowtester.runtime.swt.internal.UIContextSWT.find(UIContextSWT.java:587)
    at com.windowtester.runtime.swt.internal.UIContextSWT.find(UIContextSWT.java:587)
    at com.windowtester.runtime.swt.internal.UIContextSWT.find(UIContextSWT.java:587)
    at com.windowtester.runtime.swt.internal.UIContextSWT.find(UIContextSWT.java:587)
    at com.windowtester.runtime.swt.internal.UIContextSWT.find(UIContextSWT.java:587)
..............

Original issue reported on code.google.com by [email protected] on 29 Apr 2013 at 4:48

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.