当前位置: 首页>>代码示例>>Java>>正文


Java ElementLocator类代码示例

本文整理汇总了Java中org.openqa.selenium.support.pagefactory.ElementLocator的典型用法代码示例。如果您正苦于以下问题:Java ElementLocator类的具体用法?Java ElementLocator怎么用?Java ElementLocator使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


ElementLocator类属于org.openqa.selenium.support.pagefactory包,在下文中一共展示了ElementLocator类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: decorate

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
@Override
public Object decorate(final ClassLoader ignored, final Field field) {
    if (!isProxyable(field)) {
        return null;
    }

    final ElementLocator locator = new PageElementLocator(webDriver, context, field);

    if (PageElement.class.isAssignableFrom(field.getType())) {
        return proxyForLocator(field, locator);
    } else if (PageElementCollection.class.isAssignableFrom(field.getType())) {
        return proxyForCollectionLocator(locator);
    } else {
        return null;
    }
}
 
开发者ID:MagenTys,项目名称:cinnamon,代码行数:17,代码来源:PageElementFieldDecorator.java

示例2: getCurrentScope

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
/**
 * Returns scope represented by this factory. In this case, it is
 * {@link NestedSelectorScopedElementLocator} constructed out of parent factory and parent field
 * and selector.
 */
@Override
public ElementLocator getCurrentScope() {

  return new NestedSelectorScopedElementLocator(searchContext, parentFactory, selector,
      globalCurrenScope);
}
 
开发者ID:Cognifide,项目名称:bobcat,代码行数:12,代码来源:NestedSelectorScopedLocatorFactory.java

示例3: acquireSearchContext

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
private SearchContext acquireSearchContext(ElementLocatorFactory elementLocatorFactory) {
  SearchContext searchContext;
  ElementLocator parentElementLocator = ((ParentElementLocatorProvider) elementLocatorFactory).
    getCurrentScope();
  if (parentElementLocator instanceof SearchContextAwareLocator) {
    searchContext = ((SearchContextAwareLocator) parentElementLocator).getSearchContext();
  } else {
    searchContext = parentElementLocator.findElement();
  }
  return searchContext;
}
 
开发者ID:Cognifide,项目名称:bobcat,代码行数:12,代码来源:PageObjectSelectorListProxyProvider.java

示例4: proxyForLocator

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
private Object proxyForLocator(final Field field, final ElementLocator locator) {
    final PageElementInterceptor methodInterceptor = new PageElementInterceptor(locator);
    final Class<?>[] argTypes = new Class<?>[] {};
    final Object[] args = new Object[] {};
    return getEnhancedProxy(field.getType(), argTypes, args, methodInterceptor);

}
 
开发者ID:MagenTys,项目名称:cinnamon,代码行数:8,代码来源:PageElementFieldDecorator.java

示例5: decorate

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
@Override
public Object decorate(ClassLoader loader, Field field) {
	if (field.isAnnotationPresent(Root.class)) return null;
	if (!this.shouldDecorate(field)) return this.nextDecoratorInChain.decorate(loader, field);
	
	ElementLocator locator = this.factory.createLocator(field);
	if (locator == null) return null;
	return this.decorateField(loader, field, locator);
}
 
开发者ID:wiselenium,项目名称:wiselenium,代码行数:10,代码来源:ElementDecoratorChainTemplate.java

示例6: decorateField

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
private Object decorateField(ClassLoader loader, Field field, ElementLocator locator) {
	if (this.isDecoratableList(field)) {
		List<WebElement> webElements = this.proxyForListLocator(loader, locator);
		Class<?> listType = (Class<?>) ((ParameterizedType) field.getGenericType())
				.getActualTypeArguments()[0];
		return this.decorate(listType, webElements);
	}
	WebElement webElement = this.proxyForLocator(loader, locator);
	return this.decorate(field.getType(), webElement);
}
 
开发者ID:wiselenium,项目名称:wiselenium,代码行数:11,代码来源:ElementDecoratorChainTemplate.java

示例7: LocatingElementListHandler

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
public LocatingElementListHandler(ElementLocator locator, String name, By by, WebDriver driver)
{
	this.locator = locator;
	this.name = name;
	this.by = by;
	this.webDriver = driver;
}
 
开发者ID:qaprosoft,项目名称:carina,代码行数:8,代码来源:LocatingElementListHandler.java

示例8: AbstractUIObjectListHandler

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
public AbstractUIObjectListHandler(Class<?> clazz, WebDriver webDriver, ElementLocator locator, String name)
{
	this.clazz = clazz;
	this.webDriver = webDriver;
	this.locator = locator;
	this.name = name;
}
 
开发者ID:qaprosoft,项目名称:carina,代码行数:8,代码来源:AbstractUIObjectListHandler.java

示例9: proxyForLocator

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
protected ExtendedWebElement proxyForLocator(ClassLoader loader, Field field, ElementLocator locator)
{
	InvocationHandler handler = new LocatingElementHandler(locator);
	WebElement proxy = (WebElement) Proxy.newProxyInstance(loader, new Class[]
	{ WebElement.class, WrapsElement.class, Locatable.class }, handler);
	return new ExtendedWebElement(proxy, field.getName(), field.isAnnotationPresent(FindBy.class) ? new LocalizedAnnotations(field).buildBy() : null, webDriver);
}
 
开发者ID:qaprosoft,项目名称:carina,代码行数:8,代码来源:ExtendedFieldDecorator.java

示例10: proxyForListLocator

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
@SuppressWarnings("unchecked")
protected List<ExtendedWebElement> proxyForListLocator(ClassLoader loader, Field field, ElementLocator locator)
{
	InvocationHandler handler = new LocatingElementListHandler(locator, field.getName(), new LocalizedAnnotations(field).buildBy(), webDriver);
	List<ExtendedWebElement> proxies = (List<ExtendedWebElement>) Proxy.newProxyInstance(loader, new Class[]
	{ List.class }, handler);

	return proxies;
}
 
开发者ID:qaprosoft,项目名称:carina,代码行数:10,代码来源:ExtendedFieldDecorator.java

示例11: proxyForListUIObjects

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
@SuppressWarnings("unchecked")
protected <T extends AbstractUIObject> List<T> proxyForListUIObjects(ClassLoader loader, Field field,
		ElementLocator locator)
{
	InvocationHandler handler = new AbstractUIObjectListHandler<T>((Class<?>) getListType(field), webDriver,
			locator, field.getName());
	List<T> proxies = (List<T>) Proxy.newProxyInstance(loader, new Class[]
	{ List.class }, handler);
	return proxies;
}
 
开发者ID:qaprosoft,项目名称:carina,代码行数:11,代码来源:ExtendedFieldDecorator.java

示例12: getCurrentScope

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
/**
 * Returns scope represented by this locator factory.
 */
@Override
public ElementLocator getCurrentScope() {
  return new WebElementLocator(webElement);
}
 
开发者ID:Cognifide,项目名称:bobcat,代码行数:8,代码来源:WebElementScopedLocatorFactory.java

示例13: createLocator

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
/**
 * Return a DefaultElementLocator.
 */
@Override
public ElementLocator createLocator(Field field) {
  return new DefaultElementLocator(resolveContext(field), field);
}
 
开发者ID:Cognifide,项目名称:bobcat,代码行数:8,代码来源:WebElementScopedLocatorFactory.java

示例14: createLocator

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
/**
 * Creates a locator for the given field.
 */
@Override
public ElementLocator createLocator(Field field) {
  return new SelectorScopedElementLocator(searchContext, selector, field);
}
 
开发者ID:Cognifide,项目名称:bobcat,代码行数:8,代码来源:SelectorScopedLocatorFactory.java

示例15: getCurrentScope

import org.openqa.selenium.support.pagefactory.ElementLocator; //导入依赖的package包/类
/**
 * Returns scope represented by this factory.
 * In this case, it is SelectorElementLocator constructed out of searchContext and selector.
 */
@Override
public ElementLocator getCurrentScope() {
  return new SelectorElementLocator(searchContext, selector);
}
 
开发者ID:Cognifide,项目名称:bobcat,代码行数:9,代码来源:SelectorScopedLocatorFactory.java


注:本文中的org.openqa.selenium.support.pagefactory.ElementLocator类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。